【发布时间】:2025-11-24 12:55:01
【问题描述】:
我正在尝试创建一个 fillArray 方法,该方法用 20 个随机值填充和排列,并每隔三个值求和一次。我在第 21 行得到一个 ArrayExceptionOutOfBounds,这是调用该方法的时间。通过调试,我看到数组填充了正确的值并正确计算了总和。我想知道错误是什么。
public static void fillArray(){
//adding up A[0], A[3], A[6}, ...
double[] A = new double[20];
for(int i = 0; i < A.length; i++)
A[i] = Math.random();
double sum = 0;
int k = 0;
do{
k += 3;
sum += A[k];
}while(k < 20);
System.out.println("sum = " + sum);
}
我再次希望确定错误的原因,不一定是修复它的方法。
【问题讨论】:
-
如果你在调试器中看过它,那么你已经看到 k 变成 21 并且你明白了为什么。
-
感谢大家的帮助,由于某种原因,我认为当 k 达到 21 的值时,它不会被调用。我的愚蠢错误。谢谢
标签: java arrays debugging error-handling