黑马程序员技术交流社区

标题: 为什么while循环的结果不对呢。。 [打印本页]

作者: anywayDo    时间: 2015-5-6 16:56
标题: 为什么while循环的结果不对呢。。
  1. import java.io.*;
  2. class  FileReaderDemo
  3. {
  4.         public static void main(String[] args)
  5.         {
  6.                 FileReader fr=null;
  7.                 try
  8.                 {
  9.                         fr=new FileReader("demo.txt");
  10.                         /*for(int num=fr.read();num>0;num= fr.read())
  11.                         {
  12.                                 System.out.println("num="+(char)num);
  13.                         }
  14.                         */int num=0;
  15.                         while((fr.read())>0)
  16.                         {
  17.                                 num=fr.read();
  18.                                 System.out.println("num="+(char)num);
  19.                         }
  20.                 }
  21.                 catch (IOException i)
  22.                 {
  23.                         throw new RuntimeException("文件未找到");
  24.                 }
  25.                 finally
  26.                 {
  27.                         try
  28.                         {
  29.                                 if(fr!=null)
  30.                                         fr.close();
  31.                         }
  32.                         catch (IOException i)
  33.                         {
  34.                                 throw new RuntimeException("文件未找到");
  35.                         }
  36.                 }
  37.        
  38.         }
  39. }
复制代码



作者: 关山明月    时间: 2015-5-6 17:16
  1. while((num=fr.read())==-1)
  2.                         {
  3.                                 System.out.println("num="+(char)num);
  4.                         }

复制代码


read() 方法读到末尾的标记是返回-1
作者: l763631191    时间: 2015-5-6 17:51
我晕了~~~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2