黑马程序员技术交流社区

标题: 对while循坏的一点不理解,求解惑 [打印本页]

作者: 马官聘    时间: 2015-12-24 20:47
标题: 对while循坏的一点不理解,求解惑
问题在文中注释的地方,求各位哥哥们解下惑!!
import java.io.*;
class test4
{
        public static void main(String[] args) throws IOException
        {
        FileReader r = new FileReader("test.java");
        MyBuff mb = new MyBuff(r);
        String line = mb.MyReadLine();//这里调用了下面MyBuff类的MyReadLine()方法,为什么输出结果只是打印出文件的一行,而不是整个文件
        System.out.println(line);
        mb.Myclose();
        }
}
class MyBuff
{
        private FileReader r;
        MyBuff(FileReader r)
        {
                this.r=r;
        }
        public String MyReadLine() throws IOException
        {
                StringBuilder sb = new StringBuilder();
                        int ch = 0;
                while((ch=r.read())!=-1)//这个循环不是打印出了整个文件才会停么?????????
                {
                        if(ch=='\r')
                                continue;
                        if(ch=='\n')
                                return sb.toString();
                        else
                        sb.append((char)ch);
                }
                return null;
        }
        public void Myclose() throws IOException
        {
                r.close();
        }
}



作者: fysoft    时间: 2015-12-24 22:07
   if(ch=='\n')
                                return sb.toString();
遇到换行符返回。。。




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