我有一个简单的嵌套for循环,它可以完美地输出结果,然后抛出一个:
线程“main”中的异常java.lang.ArrayIndexOutOfBoundsException:4
数组是4行4列,我试图对列进行总计,所以我基本上只是颠倒了嵌套循环。
rowIndex = 1;
for (int i = 0; i < regions[i].length; i++)
{
int sum = 0;
for (int j = 0; j < regions.length; j++)
{
sum += regions[j][i];
}
System.out.println("Q" + rowIndex + ": " + currency.format(sum));
rowIndex++;
}
答案 0 :(得分:2)
这不应该看起来像......
rowIndex = 1;
for (int j = 0; j < regions.length; j++) // here regions.length
{
int sum = 0;
for (int i = 0; i < regions[j].length; i++) // here index j
{
sum += regions[j][i];
}
System.out.println("Q" + rowIndex + ": " + currency.format(sum));
rowIndex++;
}
认为你混淆了指数......干杯!
答案 1 :(得分:2)
你搞乱了数组的索引。我猜你的代码应该是这样的:
rowIndex = 1;
for (int i = 0; i < regions.length; i++)
{
int sum = 0;
for (int j = 0; j < regions[i].length; j++)
{
sum += regions[i][j];
}
System.out.println("Q" + rowIndex + ": " + currency.format(sum));
rowIndex++;
}