for(;;)在Java中是什么意思?

for(;;)在Java中是什么意思?,java,Java,可能重复: 我正在阅读一些JavaAPI文档,我遇到了一个非常奇怪的活泼的外观循环,这让我很高兴来到这里问它是关于什么的。我很乐意尽快找到它。感谢您即将做出的努力 public int read() throws IOException { synchronized (lock) { ensureOpen(); **for (;;)** { if (nextChar >= nChars) {

可能重复:

我正在阅读一些JavaAPI文档,我遇到了一个非常奇怪的活泼的外观循环,这让我很高兴来到这里问它是关于什么的。我很乐意尽快找到它。感谢您即将做出的努力

  public int read() throws IOException {
       synchronized (lock) {
          ensureOpen();
           **for (;;)** {
               if (nextChar >= nChars) {
                  fill();
                  if (nextChar >= nChars)
                       return -1;
               }
              if (skipLF) {
                     skipLF = false;
                  if (cb[nextChar] == '\n') {
                     nextChar++;
                      continue;
                   }
               }
             return cb[nextChar++];
          }
       }
    }
对于(;;)

这是一个无限循环

例如,它相当于

while(true)

编辑:显然,使用“无限”一词是一个错误的选择。尽管如此,出于所有意图和目的,
for(;)
循环不会使用与典型的
for
循环相同的条件机制终止。我相信这就是问题的关键所在。在这一点上,这些评论简直令人毛骨悚然

对于(;;)

这是一个无限循环

例如,它相当于

while(true)


编辑:显然,使用“无限”一词是一个错误的选择。尽管如此,出于所有意图和目的,
for(;)
循环不会使用与典型的
for
循环相同的条件机制终止。我相信这就是问题的关键所在。在这一点上,这些评论只是吹毛求疵。

这意味着循环终止的条件没有以通常的形式表达出来


终止循环的唯一方法是两个
return
语句。

这意味着循环的终止条件没有以通常的形式表示


终止循环的唯一方法是两个
return
语句。

如@Tom所述,这是一个无限循环。
如果你想永远执行某个东西,那么在你的程序中使用它是很有可能的。

正如@Tom所说,这是一个无限循环。
for(;;)
如果你想永远执行某个东西,那么在你的程序中使用它是可能的

for(;;)
这是一个infinte循环,没有变量初始化,没有条件检查,没有增量步骤。。。仅在条件内执行“return”语句时退出循环

循环的公共值:

for(int i = 0 ; i < max ; i++)
for(int i=0;i
希望有帮助

这是一个infinte循环,没有变量初始化,没有条件检查,没有增量步骤。。。仅在条件内执行“return”语句时退出循环

循环的公共值:

for(int i = 0 ; i < max ; i++)
for(int i=0;i

希望有帮助。

对于(;;)休息不是无限的loop@amit显然,中断会改变事情。
break
return
throw
语句。点是-无限循环根据其内容和条件int
i=0确定;虽然(i<1){}
是一个无限循环,但条件不是严格意义上的
true
。什么是更干净的代码?对于(;;)或while(true)?@nexus,这无关紧要,它们本质上是等价的,可能产生相同的字节码。
对于(;;)break不是无限的loop@amit显然,中断会改变事情。
break
return
throw
语句。点是-无限循环根据其内容和条件int
i=0确定;虽然(i<1){}
是一个无限循环,但条件不是严格意义上的
true
。什么是更干净的代码?对于(;;)或while(true)?@nexus,这没关系,它们本质上是等价的,可能产生相同的字节码。这绝对是重复的,但是在写这个问题时。我找不到这个答案,在我写问题时,它没有弹出,这是你不得不承认的一点奇怪你必须向下滚动一点;)无论如何。。。。现在我们知道:)这肯定是重复的,但是在写这个问题的时候。我找不到这个答案,而且在我写问题的时候它也没有弹出,这是你不得不承认的一点奇怪你必须向下滚动一点;)无论如何。。。。现在我们知道:)再说一遍,它不是一个无限循环。它有两个退出点。同样,它不是一个无限循环。它有两个出口。