浏览其他人工作的一些来源。我发现了很多没有主体的while循环的例子
while(true);
那会做什么?不太清楚除了让它滞后之外还有什么意义?java代码段
do
{
if (!iterator.hasNext())
{
break;
}
Object obj = iterator.next();
if (obj instanceof something)
{
}
}
while (true);
这是 do..while 循环的结束。这些循环在首先检查循环条件之前运行一次。while(true) 最后意味着循环将无限运行,或者直到在调用的循环内有一个 break 语句。
您粘贴的内容实际上是一个do-while
循环,它至少执行一次(即使 for 的条件while
计算为false
)。这里的循环体是你在{}
之后看到的do
代码中的这一部分使循环成为非无限循环:
if (!iterator.hasNext())
{
break;
}
它基本上是一个 do..while 循环。
do {
// ....
} while(true);
这是infinite loop
.
当您想要某事时使用它run forever once it is started
。
这可证明等价于:
while (iterator.hasNext()) {
Object obj = iterator.next();
...
}
而且我真的不明白为什么有人会以其他方式对其进行编码。它可能是直接翻译成 Java 的反编译 C 代码。这是我能想到的任何人都这样写的唯一原因。