带有锯齿状列的锯齿状阵列,而不是锯齿状的行

问题描述 投票:0回答:1

这是我第一次使用锯齿状阵列,我试图弄清楚你是否可以用锯齿状的列制作一个,而不是锯齿状的行(我搜索谷歌和这个网站,但无济于事)。为了澄清,我想创建一个包含2列的数组;第一列只有一行,第二列有3行。

public class Tester
{
   public static void main (String [] args)
   { 
       int[][] d = new int[3][];

       // First row has 2 columns 
       d[0] = new int[2]; 

       // Second row has 1 column 
       d[1] = new int[1];

       //Third row has 1 column
       d[2] = new int[1]; 

       d[0][0] = 1;
       d[0][1] = 0;
       d[1][0] = 0;
       d[2][0] = 1;
   }
}  

此代码在第一列中打印出1,0,1,在第二列中打印出0。我要打印的是第一列中的1和第二列中的0,0,1。我该怎么办?

谢谢!!

java jagged-arrays
1个回答
0
投票

Java不允许具有可变数量的行,您可以拥有可变数量的列。始终数组声明中的最后一个括号可以留空。例如:

int[][] d = new int[3][];

您可以通过将列转换为行来实现上述输出。在这种情况下,它将被定义如下:

   int[][] d = new int[2][];

   // First row has 1 columns 
   d[0] = new int[1]; 

   // Second row has 3 column 
   d[1] = new int[3];

   d[0][0] = 1;
   d[1][0] = 0;
   d[1][1] = 0;
   d[1][2] = 1;
© www.soinside.com 2019 - 2024. All rights reserved.