java - 如何设置 JLabel 数组中元素的文本?

标签 java arrays swing nullpointerexception jlabel

我想在实例化后更改数组中 JLabels 上显示的文本。 我目前收到 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
    }
}

最佳答案

您正在实例化数组,但其中没有值。因此,如果您访问 labelArray[0] 它将返回 null。

您应该设置数组的值:

JLabel[] labelArray = new JLabel[2];
labelArray[0] = new JLabel("someText");
labelArray[1] = new JLabel("someText");

现在您可以访问标签而不会出现 NullPointer 异常。

关于java - 如何设置 JLabel 数组中元素的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37241404/

相关文章:

java - 无法解析方法 get width 和 getHeight

java - 如何从 List<MatOfPoint> 转换为 MatOfPoint2f?

javascript - 从url中获取json数据并通过JavaScript将其放入变量中

java - 将刚刚创建的 ArrayList 与之前的进行比较

java - 当另一个对象中的线程触发事件时,Swing 接口(interface)不更新组件

java - 分层 JLabel 不起作用

java - 每秒更新通知中的 RemoteViews

java - 如何获取数据源?

javascript - 嵌套数组 - 在使用 for 循环嵌套时更新子数组不起作用?

java - JFileChooser - 打开/取消/退出按钮