qingangli0351 2017-12-07 08:39 采纳率: 100%
浏览 1220
已采纳

java,eclipse,为什么for死循环会报红,while死循环不会?

请大神详细指点一下,谢谢,M~~~MU~~~~
代码如下:
int n = 1;
for (;;) {

     }
    System.out.println(n);
System会爆红
而:
    int n = 1;
     while()
         ;
    System.out.println(n);
这个不会
  • 写回答

4条回答 默认 最新

  • 战在春秋 2017-12-07 09:13
    关注

    while死循环虽然不会在System行报错,但会在while行报错,错误信息为:

    Syntax error on token "(", Expression expected after this token

    如果将while() 修改为while(true),那么两种写法都会在System行报错,且错误信息均为:

    Unreachable code

    至于为什么Eclipse不认为 while()和while(true)是相同的写法,可能要深入到编译器细节,个人觉得似乎也没有深究的必要。

    如果对您有帮助,请点击采纳答案好吗,谢谢~~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?