A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 塞外声 初级黑马   /  2017-5-6 22:54  /  1248 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Io流问题

while((fr.read()) != -1)

这样写  为什么输出不正确  

7 个回复

倒序浏览
你不定义个变量怎么接收读取的元素
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
你的问题不太明确,你说的是不是这种情况呢:在while里面有一个输出语句,里面也有一个fr.read(),如果是这样,输出是有错误的。因为,判断里面读入一个字符,在输出语句中的fr.read()又读了下一个字符,这样每次都会跳过一个字符进行输出。希望能够帮助到你
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
int ch;
while((ch=fr.read()!=-1){}
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
透心凉丶 发表于 2017-5-6 23:24
int ch;
while((ch=fr.read()!=-1){}

正解!
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
楼上正解
回复 使用道具 举报
回复 使用道具 举报
你循环体里再写一个fr.read()的话就相当于一个循环执行两次fr.read(),但是只输出一个,这样当然会错,听楼上的用个中间变量就行了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马