这是我第一次使用锯齿状数组,我想弄清楚是否可以使用锯齿状列而不是锯齿状的行(我搜索过Google和此站点,但无济于事)。为了澄清,我想做一个有两列的数组。第一列只有一行,第二列只有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。我应该怎么做?
谢谢!
答案 0 :(得分: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;