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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 完美恋爱 高级黑马   /  2013-10-13 14:39  /  1377 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 杨增坤 于 2013-10-13 16:02 编辑

while((num = r.read()) != -1);
请问这样的代码行在语法上算错吗(后面加了一个分号)?如果算错,为什么我在编译的时候没有提示呢?

评分

参与人数 1技术分 +1 收起 理由
周志龙 + 1

查看全部评分

4 个回复

倒序浏览
while 是循环,你这样写相当于你定义了多个变量名为num,当循环次数大于1时,这就是错的了,它不像for循环,只执行一次。

评分

参与人数 1技术分 +1 收起 理由
周志龙 + 1

查看全部评分

回复 使用道具 举报
while((num = r.read()) != -1);应该是while之后执行空语句,不应该算错吧。

评分

参与人数 1技术分 +1 收起 理由
周志龙 + 1

查看全部评分

回复 使用道具 举报
while循环的循环体可以为空,这是应为仅由一个分号组成的空语句在Java的语法上是合法的。

评分

参与人数 1技术分 +1 收起 理由
杨增坤 + 1

查看全部评分

回复 使用道具 举报
说明执行的是空语句,空语句也是语句;
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马