将JLabel文本设置为数字循环

时间:2015-10-26 13:10:37

标签: java loops for-loop netbeans jlabel

我正在使用Netbeans IDE 8.0.2创建一个java程序,其中用户输入一个起始编号和一个结束编号。一旦他们点击JButton,它就会输出一个循环,从JLabel中的起始编号开始到结束编号​​(例如,3,4,5,6,7,8)。循环在控制台中完全正常运行,但只有最后一个循环数输出到JLabel。

代码如下

import java.io.FileInputStream;
import java.io.IOException;

class Input {

  public static void main(String[] args) throws IOException {
    FileInputStream fis=null;
    try {
      fis=new FileInputStream("file.txt");
      int available=fis.available();
      byte[] read=new byte[available];
      int bytesRead;
      int offset=0;
      while(offset<read.length) {
        bytesRead=fis.read(read,offset,read.length-offset);
        if (bytesRead==-1) break;
        offset+=bytesRead;
      }
      System.out.println(read.length);
      for (byte b:read) {
        int i=b & 0xFF;
        System.out.write(i);
        System.out.write('\t');
      }
    }
    finally {
      if (fis != null)
        try {
          fis.close();
        }
        catch(IOException e) {
          e.printStackTrace();
        }
    }
  }

}

如果我能得到任何帮助,为什么会发生这种情况以及如何解决这个问题,那将是惊人的。

1 个答案:

答案 0 :(得分:2)

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

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

__()

顺便说一下:你有语法错误。