在Java中为二维数组提供元素,为什么不工作?

时间:2013-04-12 17:37:38

标签: java arrays

我想在Java中用一组特定的数字填充二维数组。

我的示例数组:{{7,-4},{8,-2},{9,-1}}

如何在不执行此操作的情况下加载数组?

int[][] x = new int[3][2];
x[0][0] = 7;
x[0][1] = -4;
x[1][0] = 8;
x[1][1] = -2;
x[2][0] = 9;
x[2][1] = -1;

此外,我认为我可以做到这一点,但我得到“错误:非法开始表达。”

class Alpha {
    int[][] x;

    public Alpha () {
        x = new int[3][];
        x[0] = {7,-4};    <== line where error is located
    }
}

2 个答案:

答案 0 :(得分:5)

试试这个。

您可以像这样初始化二维数组。

int x[][] = {
                {7, -4},
                {8, -2},
                {9, -1}
            };

OR

x[0] = new int[] {7,-4};
x[1] = new int[] {8,-2};
x[2] = new int[] {9,-1};

答案 1 :(得分:2)

由于外部数组的每个元素都有效地指向一维数组,您可以这样做:

x[0] = new int[] {7,-4};