1、for (;;) 与 while (true) 的比较

在Java中,for (;;) 与 while (true) 都可以用来构建无限循环,它们的功能基本相同,但是它们的执行效率却有很大的不同,下面就来比较一下它们的差异。

2、for (;;) 的优点

for (;;) 的优点首先在于它的语义性更强,for 循环可以让程序员更清晰的把握循环的执行次数,例如:

从上面的代码可以看出,for 循环会执行 10 次,而 while 循环无法明确的表示出循环执行次数,所以 for 循环的可读性更强。

3、while (true) 的优点

while (true) 的优点在于它的执行效率比 for (;;) 高,因为 for (;;) 在每次循环都会检查循环条件,而 while (true) 只需要检查一次,所以 while (true) 的执行效率更高。例如:

从上面的代码可以看出,while (true) 只需要检查一次循环条件,而 for (;;) 在每次循环都会检查循环条件,所以 while (true) 的执行效率更高。

4、总结

总的来说,for (;;) 与 while (true) 都可以用来构建无限循环,但是它们的执行效率却有很大的不同,for (;;) 的语义性更强,而 while (true) 的执行效率更高。所以在使用时,要根据实际情况选择合适的循环方式。