Java 为什么';jlabel阵列是否显示在面板中?

Java 为什么';jlabel阵列是否显示在面板中?,java,Java,star是我的char[]: Label[] labels = new JLabel[20]; for (int k = 0; k < star.length; k++) { labels[k] = new JLabel("x"); xPanel.add(labels[k]); } Label[]labels=新的JLabel[20]; 对于(int k=0;k

star
是我的
char[]

Label[] labels = new JLabel[20];
for (int k = 0; k < star.length; k++) {
  labels[k] = new JLabel("x");
  xPanel.add(labels[k]);
}

Label[]labels=新的JLabel[20];
对于(int k=0;k
这对我来说很好:

public class MyFrame extends JFrame {

    public static void main(final String[] args) {
        final JFrame frame = new JFrame();
        frame.setLayout(new FlowLayout());
        final JLabel[] labels = new JLabel[20]; // replaced Label with JLabel
        for (int k = 0; k < labels.length; k++) { // replaces star with labels
            labels[k] = new JLabel("x");
            frame.add(labels[k]);
        }
        frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
        frame.setVisible(true);
    }

}
公共类MyFrame扩展了JFrame{
公共静态void main(最终字符串[]args){
最终JFrame=新JFrame();
frame.setLayout(新的FlowLayout());
最终JLabel[]标签=新的JLabel[20];//用JLabel替换标签
对于(int k=0;k
结果(调整帧大小后为):


您必须使用此方法更新jlabel数组

这是针对您共享的刽子手程序CN?根据您发布的有限代码很难发表评论。您确定xPanel已添加到JFrame的某个位置吗?为什么要迭代
star
Label[]labels=new JLabel[20]JLabel不是子类标签,因此这不起作用。这应该是
JLabel[]labels=newjlabel[20]?字符串[]单词included={“苹果”、“你好”、“法拉利”};随机=新随机();字符串字=wordsIncluded[random.nextInt(wordsIncluded.length)];char[]star=word.toCharArray();JLabel[]标签=新的JLabel[20];对于(intk=0;kpanel.updateUI();