0

我有一个简单的嵌套 for 循环,可以完美地输出结果,但随后抛出:

线程“主”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++;
        }
4

2 回答 2

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++;
    }

认为你混淆了指数......干杯!

于 2013-04-02T20:54:57.553 回答
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++;
    }
于 2013-04-02T20:55:16.537 回答