使用for循环更改JLabel文本

时间:2018-05-01 18:01:21

标签: java swing jlabel

我需要帮助来改变循环的Jlabel文本,我需要尝试一些类型:

String[] inputs = {"nickname0", "nickname1", "nickname2", "nickname3", "nickname4", "nickname5", "nickname6", "nickname7", "nickname8", "nickname9"};
            for(int i = 0; i<9; i++) {
                inputs[i].setText("exemple" + i);
            }

或者像这样:

for(int i = 0; i<9; i++) {
            (inputs + i).setText("exemple" + i);
        }

但这种方法不起作用,任何人都有解决方案吗?

1 个答案:

答案 0 :(得分:3)

实际上,您更新了数组中String对象的内容,而不是应用程序使用的JLabel对象 因此,在数组中添加JLabel对象并迭代它们:

JLabel lbl1 = new JLabel("nickname0");
JLabel lbl2 = new JLabel("nickname1");
...

JLabel[] inputs = {lbl1, lbl2, ...};
for(int i = 0; i < inputs.length; i++) {
    inputs[i].setText("exemple" + i);
}