对于jframe中的循环输出

时间:2014-07-08 21:43:10

标签: java swing for-loop jframe

所以这是我的学校作业

编写一个程序: 接受输入的起始值。 接受结束值的输入。 显示这两个值之间的所有整数(包括)。 提示:使用for循环,不要忘记将字符串中的输入转换为整数。

它写在jFrame中,它只输出最后一个值而不是起始值和结束值之间的所有值。我正在使用netbeans IDE 8.0。

//Variables
int starting, ending;
starting=Integer.parseInt(this.txtStarting.getText());
ending=Integer.parseInt(this.txtEnding.getText());

//for Loop
for(int output=starting; output < ending; output++) {
    String out1 = Integer.toString(output);
    this.lblValues.setText(out1);
}

我不确定出了什么问题。当我System.out.println(output);它输出我想要的东西时。

1 个答案:

答案 0 :(得分:0)

当你调用setText()时,你在JLabel中设置文本(我假设它是lblValues的类型)。以前的值未存储。您可以通过附加到字符串然后只在最后设置文本来解决此问题:

String out1 = "";
for(int output=starting; output <= ending; output++) {
    out1 = out1 + " " + Integer.toString(output);
}
this.lblValues.setText (out1);

另请注意,您需要输出&lt; =结束,而不是输出&lt;结束,作为你的for循环的条件,否则不包括最后一个值。