当前位置: 首页 > 知识库问答 >
问题:

如何比较列表中的一个元素与相同增量元素的增量应大于12小时?

汝天宇
2023-03-14

我有一个如下的列表,我正在比较第一个元素到第二个,第二个元素到第三个,很快到12点,如果超过12小时,应该点击元素

在这里,列表可能会更改,并且每次都有任意数量的值,而不是12,它可能会增加或减少。

etcList: [28 04:15, 28 17:45, 29 00:45, 29 08:45, 29 19:35, 30 03:25, 30 12:00, 30 18:50, 31 11:20, 31 21:30, 01 06:15, 01 15:45]
for (int i = 1; i < etcList.size(); i++) {
            if (getDifference(etcList.get(i), etcList.get(i + 1)) > 12) {
                etcList.get(i + 1).$x("preceding::tr[1]/td[7]/span/span").click();
                CREW_CHANGE.shouldBe(visible).selectOption(Constants.CREW_CHANGE_POINT);
            }
}

但我得到这个错误:

java.lang.IndexOutOfBoundsException: Index: 12, Size: 12
    at java.util.ArrayList.rangeCheck(ArrayList.java:653)
    at java.util.ArrayList.get(ArrayList.java:429)

共有1个答案

广晔
2023-03-14

改变这个

for (int i = 1; i < etcList.size(); i++)

for (int i = 1; i < etcList.size() - 1; i++)

这可以防止程序在这一点上超出数组的大小-etcList.get(i 1),因为对于大小为12的数组,您的i将上升到11。但是数组的索引范围也是从0到11,这意味着,在提到的步骤中,由于(i 1)i在最后一步中为11,因此您的程序将在索引12处检查元素,这不存在。

 类似资料:
  • 我有一个数组,看起来像:。而将始终保持常数。我希望x每迭代增加100。 我就是这么做的: null null 正如您所看到的,它不是在增加值。它总是只是插入。在第一个名为pies的对象中,我希望和下一个名为cakes的对象为。 我该怎么做?

  • 如果你有一个列表=1,3,5,7,9,... 如果你试图找到列表中的前一个元素(即[t-1],第三个元素是3,即5之前的那个元素),那么这个符号与得到比该元素少一个l(即5-1=4)有什么不同 我有一个增长率的列表,我想要昨天的数据,但我得到的数据总是比今天的少 我认为最后一行的x-1才是问题所在。有什么想法吗?谢谢

  • 问题内容: 考虑以下: 如何获取列表中的元素数量? 问题答案: 该函数可以与Python中的几种不同类型一起使用-内置类型和库类型。例如: 官方2.x文档在这里: 官方3.x文档在这里:

  • 我有一个数字列表L。还有另一个数字列表M。我需要返回一个在L和M中找到的数字列表L。 编辑:从数学上讲,我正在寻找多集交点。 例子: L=3,,4,,5,,,6 M=,7,,,,1 L'=9,1,2,1 我为此编写了以下代码: 虽然它达到了目的,但我想知道是否有一种惯用的Perl6方法可以做到这一点? 一些背景:我一直在尝试一起学习Perl6和Python,并用这两种语言解决相同的难题。Pytho

  • 我正试图用react JS呈现一个项目列表。由于我的列表项相对复杂,我创建了一个简单的小提琴来陈述我的问题。 我如何修复新添加项目的渲染时间?或者只是react js的工作方式。 这里是我的主要反应组分简化。 并且ReactStreamPost和ReactStreamActivity在这一点上可以是无状态组件。像

  • 我编写了下面的代码来从ArrayList中获取重复的元素。我的aerospikePIDs列表没有任何重复的值,但是当我执行下面的代码时,它仍然在读取if条件。