我有一个FOR循环如下:
for (int i=0; i<DataTimes.length; i++) {
int resultCounter = 0;
int currentTime = DataTimes[i];
int nextTime = DataTimes[i+1];
}
我没有包含整个代码。此阵列有超过1700个条目。当我到达数组末尾时,我的Android应用程序崩溃“DataTimes[i+1]
”将失败,因为该条目不存在。
我如何解释这个?
类似于ArrayOutOfBound异常时将nextTime设置为零。
谢谢
答案 0 :(得分:3)
更改行:
int nextTime = DataTimes[i+1];
要:
int nextTime = (i + 1) < DataTimes.length ? DataTimes[i+1] : 0;
答案 1 :(得分:0)
我一定是个错误。当i = DataTimes.length-1时,DataTimes [i]是数组中的最后一个元素。此时i + 1确实不受约束。