我必须在Java中创建JCheckBoxes
的2D数组。我正在使用下面的代码,但是当我尝试设置选择的true时:
checks[0][1].setSelected(true);
它说checks[0][1]
是null
。
JCheckBox[][] checks = new JCheckBox[14][14];
for (int i = 0; i < 14; i++) {
for (int j = 0; j < 14; j++)
this.add(new JCheckBox(""));
答案 0 :(得分:1)
您必须在数组中创建每个JCheckBox
,然后添加它。我还建议使用命名常量而不是幻数,如下所示:
final int NUM_BOXES = 14; // named constant
JCheckBox[][] checks = new JCheckBox[NUM_BOXES][NUM_BOXES];
for (int i = 0; i < NUM_BOXES; i++) {
for (int j = 0; j < NUM_BOXES; j++)
checks[i][j] = new JCheckBox("");
this.add(checks[i][j]);
}
}