我正在尝试检查数组中的整数是否在增加。但是我收到ArrayOutOfBounds异常,我不明白为什么。我是编程新手。
for (int i =0; i > newArray.length ; i++){
if (newArray[i] > newArray[i+1]){
System.out.println("Not increasing");
}
}
谢谢您的帮助。
答案 0 :(得分:0)
假设您的数组长度为8,所以位置是从0到7 在for循环的最后一次运行中,i = 7和i + 1 = 8 您没有newArray [i + 1] 您应该将第一个if放入新的if
if(i<(newArray.length - 1)){
if (newArray[i] > newArray[i+1]){
System.out.println("Not increasing");
}
}
答案 1 :(得分:0)
当您尝试访问数组中不存在的位置时,发生ArrayOutOfBounds异常。
您遇到的问题是newArray[i+1]
,它试图访问数组中不存在的位置。
我建议编辑条件i < newArray.length-1
:当然,还有其他方法可以解决此问题,但这是最简单的。