在Java中将2个数组转换为二维数组

Spe*_*cer 3 java arrays multidimensional-array

嗨,我试图采取两个数组,并将它们变成一个二维数组.但是,我一直收到错误:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
 at test5.sum(test5.java:12)
 at test5.main(test5.java:38)
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

public class test5 {
    int[][] final23;

    public int[][] sum(int[] x, int[] y) {
        final23 = new int[2][x.length];
        for (int i = 0; i < final23[i].length; i++) {

            final23[1][i] = x[i];
            final23[2][i] = y[i];
        }
        return final23;
    }

    public void print() {
        for (int i = 0; i < final23[i].length; i++) {
            for (int j = 0; j < final23[i].length; j++) {

                System.out.print(final23[i][j] + " ");
            }
        }
    }

    public static void main(String[] args) {
        int l[] = { 7, 7, 3 };
        int k[] = { 4, 6, 2 };
        test5 X = new test5();

        X.sum(k, l);
        X.print();
    }
}
Run Code Online (Sandbox Code Playgroud)

我不确定问题是什么.对不起,如果问题是愚蠢的,我是新编码!

lui*_*bal 5

问题是:

final23 [2][i] = y[i];
Run Code Online (Sandbox Code Playgroud)

Java数组总是从0开始.所以final23只有[0]和[1].

任何具有n个元素的数组都可以从0到n -1.