在java中将1d数组更改为2d数组

时间:2016-02-25 03:11:37

标签: java arrays

我如何将以下1d数组转换为2d数组?使用2d数组时,我有点困惑。

[100, 101, 102, 200, 201, 202, 300, 301, 302] [232, 123, 102, 200, 321, 202,  300, 301, 302]

3 个答案:

答案 0 :(得分:0)

你可以试试这个:2D Array不仅仅是一个数组数组,所以你可以把这两个数组放到一个二维数组中,二维数组的每个元素都是一个数组。

int[] arr1 = {100, 101, 102, 200, 201, 202, 300, 301, 302};
int[] arr2 = {232, 123, 102, 200, 321, 202,  300, 301, 302};
int[][] array2D = new int[2][];
array2D[0] = arr1;
array2D[1] = arr2;

答案 1 :(得分:0)

另一种方法是创建具有所需尺寸的2D数组,然后使用外部和内部for循环来传递值。例如:

int k = 0
//array declarations
for (int i = 0...)
  for (int j = 0...)
    if (k < array1D.length)
      array2D[i][j] = array1D[k];
      k++

答案 2 :(得分:0)

     int[] x = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
     int [][]z = new int[4][4];
     for (int i = 0, k=0; i < 4; i++)
        for (int jl = 0; jl < 4; jl++)
             z[i][jl] = x[k++];
     for(int i=0;i<4;i++)
     {
         System.out.println();
            for(int jl=0;jl<4;jl++)
              {
                 System.out.print(z[i][jl]+" ");
              }
     }

希望你能解决问题。快乐编码