你能从三维数组中得到一个没有循环的二维数组吗?

时间:2015-04-22 17:46:35

标签: java arrays

你能从Java中获得三维数组的子数组吗?我是Java的新手,需要一些帮助。

threeDimensions[][][] = {
    {
        {false, true, false, false},
        {false, true, false, false},
        {false, true, false, false},
        {false, true, false, false},
    },
    {
        {false, false, false, false},
        {false, true, true, false},
        {false, true, false, false},
        {false, true, false, false},
    }
};

twoDimensions = threeDimensions[0];

这种方式不起作用,但有没有办法在没有循环的情况下完成它?

2 个答案:

答案 0 :(得分:2)

你的方式确实有效,但你的语法有点不对劲。它应该是

boolean[][][] threeDimensions = {
    {
        {false, true, false, false},
        {false, true, false, false},
        {false, true, false, false},
        {false, true, false, false},
    },
    {
        {false, false, false, false},
        {false, true, true, false},
        {false, true, false, false},
        {false, true, false, false},
    }
};

boolean[][] twoDimensions = threeDimensions[0];

如果问题是将其打印出来,则需要编写

System.out.println(Arrays.deepToString(twoDimensions));

答案 1 :(得分:2)

它的工作原理与您认为的完全一样。 您只是忘了将twoDimensions声明为二维数组。 这样做:

Boolean twoDimensions[][] = threeDimensions[0];