什么时候适合使用 while(True) 循环?

发布于 2024-12-06 09:51:41 字数 485 浏览 0 评论 0原文

可能的重复:
while(true) 是不好的编程习惯吗?
使用“while (true) {…}”有什么意义?

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

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

  1. 你很狡猾
  2. 你很懒

如果有的话,什么时候使用这个合适?为什么要使用它而不是算法?

Possible Duplicate:
is while(true) bad programming practice?
What's the point of using “while (true) {…}”?

I've always considered it bad practice to use while(true). Many people think it's okay.

Why would you want to purposefully create an infinite loop? The only two reasons I can think of are:

  1. You're being devious
  2. You're being lazy

When, if ever, is it appropriate to use this? And why would you use this over an algorithm?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

擦肩而过的背影 2024-12-13 09:51:41

有时,while(true) 比其他替代方案更具可读性。恰当的例子:

BufferedReader in = ...;
while (true)
{
  String line = in.readLine();
  if (line == null)
    break;
  process(line);
}

考虑替代方案:

BufferedReader in = ...;
String line;
while ((line = in.readLine) != null)
  process(line);

Sometimes, while(true) is more readable than the alternatives. Case in point:

BufferedReader in = ...;
while (true)
{
  String line = in.readLine();
  if (line == null)
    break;
  process(line);
}

Consider the alternative:

BufferedReader in = ...;
String line;
while ((line = in.readLine) != null)
  process(line);
万人眼中万个我 2024-12-13 09:51:41
  • 在线程代码中(并发编程)..

  • 在游戏和菜单中

  • 使用 C 或 Fortran 时(我的意思是这里更多)

实际上你经常看到它......

  • In threaded code (concurrent programming)..

  • In games and for menus

  • While using C or Fortran(I mean moreso here)

Actually you see it a lot...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文