Java Uneven多维数组

时间:2015-04-15 20:05:12

标签: java multidimensional-array

我来自这段代码,我不确定究竟发生了什么。它如下:

       int twod [] [] = new int[4][];// i know the first one is row

       twod [0]  = new int[1];//
       twod [1]  = new int[2];//  What are these? 
       twod [2]  = new int[3];//
       twod [3]  = new int[4];//

最后4行在做什么?

2 个答案:

答案 0 :(得分:3)

以上代码无法编译。但是我有一种强烈的感觉,OP意味着这样的事情:

   int twod[][] = new int[4][];// i know the first one is row

   twod[0] = new int[1];
   twod[1] = new int[2];
   twod[2] = new int[3];
   twod[3] = new int[4];

这会创建一个以下形状的数组(向上 - >向下=第一维,左 - >;右=第二维:

*
**
***
****

更具体地说,当您查询数组的长度时,您将得到以下结果:

twod.length -> 4
twod[0].length -> 1
twod[1].length -> 2
twod[2].length -> 3
twod[3].length -> 4

答案 1 :(得分:2)

你发布的内容并没有为我编译。我认为这就是你想要的锯齿状阵列。

   int twod [][] = new int[4][];// i know the first one is row

   twod[0] = new int[1];//
   twod[1] = new int[2];//  What are these? 
   twod[2] = new int[3];//
   twod[3] = new int[4];//

结果(在调试中):

enter image description here