如果在名为saved_mat的数组中的特定点找到单词“true”,我试图设置一个复选框。
System.out.println(saved_mat[0][15]);
if(saved_mat[0][15].equals("true")){
e1_10e.setSelected(true);
}
第一行按预期打印出“true”,但我在第三行得到一个空指针异常。该数组的大小为[30] [24],第一行确认数组的[0] [15]元素中存在某些内容。 e1_10e被定义为JCheckbox。我不知道如何在第三行获得空指针异常。任何帮助将不胜感激。
JCheckBox e1_10e = new JCheckBox("");
e1_10e.setBounds(32, 152, 21, 23);
jp1.add(e1_10e);
这是GUI编辑器生成的用于创建JCheckbox的代码。我为几个JTextField使用了相同的编辑器,并且能够在我的代码中引用它们没有问题。
答案 0 :(得分:2)
当您需要在任何Object
上调用方法时,您需要确保实例化Object
调用构造函数。此外,在使用变量之前检查变量的值是一个很好的实践。
答案 1 :(得分:0)
声明不是创建对象,添加行:
JCheckBox e1_10e = new JCheckBox();
答案 2 :(得分:0)
我发现我的错误是
行JCheckbox e1_10e = new JCheckBox("");
由于早先声明了复选框,所需的只是
e1_10e = new JCheckBox("");