我想在实例化后更改数组中JLabel上显示的文本。 我目前得到一个java.lang.NullPointerException。
import javax.swing.JFrame;
import javax.swing.JLabel;
public class App
{
public static void main(String[] args)
{
JFrame frame = new JFrame("Swing Frame");
JLabel[] labelArray = new JLabel[2];
labelArray[0].setText("a");
labelArray[1].setText("b");
frame.add(labelArray[0]);
frame.add(labelArray[1]);
frame.setSize(350, 200); // width=350, height=200
frame.setVisible(true); // Display the frame
}
}
答案 0 :(得分:2)
您正在实例化数组,但它们中没有值。因此,如果您访问labelArray[0]
,它将返回null。
您应该设置数组的值:
JLabel[] labelArray = new JLabel[2];
labelArray[0] = new JLabel("someText");
labelArray[1] = new JLabel("someText");
现在您可以在没有NullPointer例外的情况下访问标签。