如何创建2D char数组的2D数组?

时间:2014-07-20 22:59:15

标签: java arrays multidimensional-array

我想创建一个2D数组[3] [3];每个元素应该是一个3x3字符数组 我怎样才能在java中实现这个目标?

3 个答案:

答案 0 :(得分:2)

这似乎很复杂......但仍然如此:

char[][][][] board = new char[3][3][3][3];

这听起来像一个数独板。如果您定义了一个9x9 2D char数组,那么在必要时(通过控制循环变量)可以处理正确的区域,这样会更容易。相信我,从4D阵列的角度思考会很头疼。

答案 1 :(得分:1)

创建数组类:

public class 2DChar {

    private char[][] elem = new char[3][3];

    //getters, setters...     

}

创建数组元素数组:

2DChar[][] 2dCharArray = new 2DChar[3][3];

初始化:

for(int i = 0; i < 2dCharArray.lenght(); i++) {
   for(int j = 0; j < 2dCharArray[i].lenght(); j++) {
      2dCharArray[i][j] = new 2DChar();
      //set value, etc...
   }
}

答案 2 :(得分:0)

这也可行:

Object[][] array = new Object[3][3];
char[][] subArray = new char[][] {{'a','b','c'},
                                  {'d','e','f'},
                                  {'g','h','i'}};
array[0][0] = subArray;
// initialize remaining arrays here