【发布时间】:2013-08-11 02:10:45
【问题描述】:
为了使我的程序更短,我使用数组和循环来完成一项任务,但我遇到了问题。我不确定我是初始化数组错误还是访问错误。我正在初始化一个包含 40 个 JCheckBox 的数组。
JCheckBox[] seatz={chk_a1,chk_a2,chk_a3,chk_a4,chk_a5,chk_a6,chk_a7,chk_a8,chk_a9,chk_a10,chk_b1,chk_b2...chk_d10};
每当 JCheckBox 的项目状态发生更改时,都会调用 seatChecker() 方法
public void seatChecker(JCheckBox chkbox) {
if(chkbox.isSelected()){
chkboxcount=chkboxcount+1;
} else {
chkboxcount=chkboxcount-1;
}
if(chkboxcount>=totalseats){
disableSeats();
} else {
enableSeats();
}
}
如果计数达到某个限制,我将在此处禁用 JCheckBox,否则启用它们。这两种方法的代码是
public void disableSeats() {
for(int x = 0; x < 40 ; x++) {
if(seatz[x].isSelected()==false){
seatz[x].setEnabled(false);
}
}
}
public void enableSeats() {
for(int x = 0; x < 40 ; x++) {
seatz[x].setEnabled(true);
}
}
我在if(seatz[x].isSelected()==false) 和seatz[x].setEnabled(true) 收到错误Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException 我在这里做错了什么?
【问题讨论】:
标签: java arrays swing initialization jcheckbox