【问题标题】:What does an for (;;) loop do? [duplicate]for (;;) 循环有什么作用? [复制]
【发布时间】:2021-06-04 08:32:23
【问题描述】:

我见过一个奇怪的for循环版本,其中只有(;;)用来写东西,例如:

            for (;;) {
                System.out.println("dabarkai");
            }

我的猜测是它的行为类似于 while(true) 循环。但是,如果他们的行为有一些不同,那么非常欢迎您在这里分享。

【问题讨论】:

  • 它有时也被称为forever(如果第二个表达式,条件,不存在(或它导致true),循环将迭代 - 在这种情况下永远(除非突然终止 {Exception, break, return, ...})
  • for循环创建无限循环
  • 请注意,这不是 for 循环的任何“特殊形式”;这只是一个常规的 for 循环,其中标头中的内容——归纳变量的声明、终止条件、循环后更新——是空的。这会退化为“从不”的终止条件,没有循环变量,也没有循环后更新。
  • while (true)完全一样——我相信编译器会生成同样的代码

标签: java for-loop while-loop


【解决方案1】:

是一个“无限”循环,和while(true)基本一样

如果您不手动停止它(或通过抛出异常),它将永远运行。

要阻止它,您可以使用return:

int i = 0;
for(;;) {
  i++;
  if(i == 10) {
    return;
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-02
    • 2016-02-08
    • 2021-02-28
    • 1970-01-01
    • 2010-10-17
    • 1970-01-01
    • 2019-01-09
    • 2011-04-21
    相关资源
    最近更新 更多