这是我第一次使用锯齿状阵列,我试图弄清楚你是否可以用锯齿状的列制作一个,而不是锯齿状的行(我搜索谷歌和这个网站,但无济于事)。为了澄清,我想创建一个包含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不允许具有可变数量的行,您可以拥有可变数量的列。始终数组声明中的最后一个括号可以留空。例如:
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;