坚持使用for循环(java)的数组。 [i],[i + 1],[i + 2]

时间:2016-03-27 16:47:37

标签: java arrays loops for-loop

所以我正在编写bat.com编写一个例子来练习我的期中考试其中一个问题,我卡住了。为什么他们在for循环条件语句中执行length-2 ..我不明白为什么我们必须减去2,也许这里有人可以快速解释它。我知道这是一个非常简单的事情,我没有得到。谢谢!

问题:`

public boolean array123(int[] nums) {
  // Note: iterate < length-2, so can use i+1 and i+2 in the loop
  for (int i=0; i < (nums.length-2); i++) {
    if (nums[i]==1 && nums[i+1]==2 && nums[i+2]==3) return true;
  }
  return false;
}

解决方案:

{{1}}

1 个答案:

答案 0 :(得分:2)

为了不抛出IndexOutOfBound异常。想象一下,如果你没有-2并且你到达最后一个元素并且在代码中你试图访问索引处的元素(最后一个+2),那么它会抛出异常,因为你想要达到索引不可用。