我真的需要您的帮助来解决我在Java中遇到的数组越界错误

时间:2018-12-08 15:49:37

标签: java arrays matrix

我正在为Java课程编写代码。请我们根据以下要求编写代码:

我们的代码将接收一个二维数组(一个矩阵),并将其顺时针旋转并返回一个新的旋转矩阵,而无需更改原始矩阵。

这是我的代码:

public int[][] rotateClockwise(int [][] array) {
    int[][] arr = array;
    int[][] rotated_arr = new int[arr[0].length][arr.length];
    int row = 0, col = 0;
    for (int i = 0; i < arr[0].length; i++)
        for (int j = (arr.length - 1); j >= 0; j--) {
            if (col == rotated_arr[0].length) {
                col = 0;
                row += 1;
            }
            rotated_arr[row][col] = arr[i][j];
            col += 1;
        }
        return arr;
}

我收到以下错误消息: 线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException:4

我找不到方法超出数组范围的地方。我很高兴看到是否有人可以找到该错误并在此处提及。

0 个答案:

没有答案