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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Rao^Yang 中级黑马   /  2015-6-13 22:13  /  1433 人查看  /  25 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

今天考试,遇到一个题:for(; ;); 和while(x<5); 各位求解一下,在循环语句后面加分号,有何意义呢

25 个回复

倒序浏览
没什么意义  但是语法上没什么错
回复 使用道具 举报
意义在于老师考你是不是细心,语法没错,运行没意义。
回复 使用道具 举报
表示这个代码块结束了啊
回复 使用道具 举报
赞一个,哦也
回复 使用道具 举报
;前面没有任务代码表示的是一个空语句,java中语句一都是用 ; 或者 {}来表示语名结束。for(; ;);和while(x<5);代表的是两个死循环(x<5为true的话)。语句后面的;就是循环体。不加;会出现编译报错。
回复 使用道具 举报
王骥 中级黑马 2015-6-13 23:14:15
7#
我也想知道for(;;);是什么意思
回复 使用道具 举报
lwen 中级黑马 2015-6-13 23:24:29
8#
这种格式只在面试题里更有意义,考你的基础
回复 使用道具 举报
语法没错,我被坑了
回复 使用道具 举报
加;,说明这是一个语句的结束
回复 使用道具 举报
空循环,相当于延迟了一下时间,其实没有什么卵用。
回复 使用道具 举报
for(; ;);会死在这里,知道虚拟机停止,
while(x<5); 如果,x没有被定义,比哪一报错,若果定义了,并且真的小于5,效果和上边这货一样,
如果,x 不小于5 while语句条件不成立,程序会继续向下执行。
这么说明白吗
回复 使用道具 举报

for(; ;);会死在这里,直到虚拟机停止,
while(x<5); 如果,x没有被定义,编译报错,若果定义了,并且真的小于5,效果和上边这货一样,
如果,x 不小于5 while语句条件不成立,程序会继续向下执行。
回复 使用道具 举报
前面的for是个死循环
回复 使用道具 举报
楼上的分析不错
回复 使用道具 举报
然而这代码并没有什么卵用
回复 使用道具 举报
;是结束语句 表示不执行循环体。
回复 使用道具 举报
为了语句结束,必须要加分号,如果后面有一队 { } 就不用加了,因为 } 可以代表结束
回复 使用道具 举报
测试题吧。。应该都是死循环,如果分开编译的话没有问题。
for(;;);连着写个while(x<5);会报错。
循环语句后+直接+;应该代表结束循环体,也就是说这个for和while并没有循环体。
for(;;);肯定是死循环了。
while(x<5);如果x的值<5就是死循环,>5就跳过循环。
回复 使用道具 举报
没有语法错误,就是执行时候没有任何意义,就是废话
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马