java - 将 JLabel 文本设置为数字循环

标签 java jlabel

我正在编写一个简单的 Java 应用程序,其中用户提供两个输入;起始编号和结束编号。单击按钮后,应用程序应在屏幕上显示起始数字和结束数字之间的所有数字。

例如。 (1 2 3 4 5) 如果 starting = 1ending = 5

这是我用来输出数字的循环

Int starting = 1;
Int ending = 5;

for(starting; starting <= ending; starting++){
    //"Output" is a JLabel object
    Output.setText(starting);
}

我希望这会将 Output 的内容设置为 1 2 3 4 5。尽管到循环结束时,Output 的内容只是序列中的最后一个数字(本例中为 5)。

有人可以解释一下为什么我会看到这种行为吗?

最佳答案

您在每次迭代中都会覆盖 JLabel 中的文本。这就是 JLabel 始终显示最后一个数字的原因。

将所有整数连接到一个字符串中,然后在循环完成后,将 JLabel 的文本设置为连接的字符串。

 String result = "";
    for (int starting = Integer.parseInt(Start.getText()); starting <= ending; starting++){
        result += starting;
    }
    output.setText(result);

顺便说一句:您有语法错误。

关于java - 将 JLabel 文本设置为数字循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33346626/

相关文章:

java - 使用 java Streams 转换嵌套列表

java - 局部保留哈希函数

java - gwt-dev 包含 httpclient 4.0 我如何在 Maven 环境中解决这个问题?

java - Swing JLabel : Provide gap between text and underline

java - 无法覆盖 Nimbus 属性

java - JLabel 中的超链接

java - 每次更新时移动 JLabel 的位置

java - 如何在随机生成数字后返回单位数计数(Java,数组)

java - 即使目标文件已经存在,如何在Java中以原子方式重命名文件?

java - 在 ScrollPane 中添加多个 jlabel