黑马程序员技术交流社区

标题: 关于for循环的一些疑问 [打印本页]

作者: 鸣人H    时间: 2015-5-26 00:28
标题: 关于for循环的一些疑问
for(;;);{}
这个语句为什么会出现错误???
for(;;);这个语句是对的。
{}这个语句也是对的,为什么连起来就是错的???


作者: hui1107464497    时间: 2015-5-26 00:47
额,是不是错了哦,for( ; ;){}   小括号后没有分号
作者: 君子无醉    时间: 2015-5-26 05:43
你也说了 for(;;);是一个语句 {}是一个语句,两条语句怎么能直接拼成一条呢?  而且{}这个不叫语句,叫做代码块,是先于构造函数而执行的代码块,用于给变量赋值的   如果这两条语句要拼成一条的话 应该是for(;;){}   这是一个无限死循环 判断条件永远为真,你可以在{}输入语句,结果会无限执行 比如写一条输出语句
作者: 鸣人H    时间: 2015-5-26 21:46
回答的挺详细,,我试下。。。谢谢了。。。。
作者: 鸣人H    时间: 2015-5-26 21:49
君子无醉 发表于 2015-5-26 05:43
你也说了 for(;;);是一个语句 {}是一个语句,两条语句怎么能直接拼成一条呢?  而且{}这个不叫语句,叫做代码 ...

回答的挺详细,我试下。谢谢了。。
作者: 人在旅途~东营    时间: 2015-5-26 21:56
java中“;”就代表着语句的结束。其他的2楼解释的很清楚,for(;;){}是个死循环,使用循环语句记得加上控制语句。
作者: 郭.威    时间: 2015-5-26 22:01
不能加封号,for(;;){}
作者: 鸣人H    时间: 2015-5-26 22:07
郭.威 发表于 2015-5-26 22:01
不能加封号,for(;;){}

不加分号是死循环!!
作者: 鸣人H    时间: 2015-5-28 22:39
hui1107464497 发表于 2015-5-26 00:47
额,是不是错了哦,for( ; ;){}   小括号后没有分号

是错的,,但是
就如我的问题里的for(;;);这个语句是对的,而在类中单独写;也是对的。。单独写{}也是对的,为什么加起来就不对了呢?这就是我的疑惑所在。
作者: 灞波儿奔    时间: 2015-5-28 22:44
你for(;;);这个语句本身没问题   但是你加上最后的分号 表示语句已经结束 就不会读取你下面大括号里面的内容了 所以会报错。
作者: bin2015    时间: 2015-5-28 22:48
  1. for(;;);{}
复制代码

前面的for循环是死循环后面的代码根本就没有执行的机会,java虚拟机会认为这一句是废话,所以才会报错。你把for循环和{}换下执行顺序换下就可以编译通过
作者: 牛奋    时间: 2015-5-28 22:54
;和{}不能同时出现,;表示语句结束,而{}表示语句块。
作者: 鸣人H    时间: 2015-5-28 23:46
bin2015 发表于 2015-5-28 22:48
前面的for循环是死循环后面的代码根本就没有执行的机会,java虚拟机会认为这一句是废话,所以才会报错。你 ...

好像懂点了,谢谢,前边的确是死循环!
作者: 鸣人H    时间: 2015-5-29 00:05
灞波儿奔 发表于 2015-5-28 22:44
你for(;;);这个语句本身没问题   但是你加上最后的分号 表示语句已经结束 就不会读取你下面大括号里面的内 ...

有一定道理,谢谢
作者: luxinyu    时间: 2015-5-29 00:06
小括号后面去掉分号
作者: 鸣人H    时间: 2015-5-29 00:13
君子无醉 发表于 2015-5-26 05:43
你也说了 for(;;);是一个语句 {}是一个语句,两条语句怎么能直接拼成一条呢?  而且{}这个不叫语句,叫做代码 ...

不错,差不多能理解了
作者: 鸣人H    时间: 2015-5-29 00:14
人在旅途~东营 发表于 2015-5-26 21:56
java中“;”就代表着语句的结束。其他的2楼解释的很清楚,for(;;){}是个死循环,使用循环语句记得加上 ...

是,还是自己基础掌握的不好!
作者: 谢晓明    时间: 2015-5-29 00:49
这个的错误是因为你前面是一个死循环,后面的代码就执行不到了,所以后面的语句就报错了
作者: kmlitheima    时间: 2015-5-29 00:58
加上;表示是空无循环类体,加上{}则表示有类体但是无内容。




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