在jlabel中水平显示循环

时间:2018-10-29 20:34:33

标签: java swing jframe jlabel

while (minValue <= maxValue){
        valueOutput.setText(""+minValue);
        minValue++;

这是我用来显示输入的最小和最大数字中的数字的while循环,但是我在jLabel中正确显示数字时遇到了困难

数字是垂直格式的,仅显示jLabel中的最后一个数字

2 个答案:

答案 0 :(得分:1)

setText()替换现有文本。

您要执行的操作是在循环中创建一个String,然后在循环结束时将标签中的文本设置为String中的文本。您可以为此使用StringJoiner类:

StringJoiner sj = new StringJoiner(",");

while (minValue <= maxValue)
{
    sj.add( "" + minValue);
    minValue++;
}

valueOutput.setText( sj.toString() );

答案 1 :(得分:0)

尝试一下:

StringJoiner joiner=new StringJoiner();

while (minValue <= maxValue){
   joiner.add(String.valueOf(minValue++);
}
valueOutput.setText(joiner.toString());

这将创建由默认分隔符(,)分隔的数字字符串,然后将其放置在标签内(假设多数民众赞成valueOutput

如果您未使用Java8,则可以将StringJoiner替换为StringBuilder