什么时候(真)循环合适?

Cod*_*ody 0 conditional while-loop

可能重复:
是(真)糟糕的编程习惯吗?
使用"while(true){...}"有什么意义?

我一直认为使用它是不好的做法while(true).很多人认为没关系.

为什么要有目的地创建无限循环?我能想到的唯一两个原因是:

  1. 你是狡猾的
  2. 你很懒

如果有的话,是否适合使用它?为什么要在算法上使用它?

Gil*_*ili 5

有时,while(true)比替代品更具可读性.例证:

BufferedReader in = ...;
while (true)
{
  String line = in.readLine();
  if (line == null)
    break;
  process(line);
}
Run Code Online (Sandbox Code Playgroud)

考虑替代方案:

BufferedReader in = ...;
String line;
while ((line = in.readLine) != null)
  process(line);
Run Code Online (Sandbox Code Playgroud)