Files
freeCodeCamp/guide/chinese/java/loops/infinite-loops/index.md

65 lines
1.6 KiB
Markdown
Raw Normal View History

---
title: Infinite Loops
localeTitle: 无限循环
---
# 无限循环
infinte循环是一个循环语句 `for` `while` `do-while` ),它不会自行结束。
循环语句的测试条件决定循环体是否执行。因此始终为真的测试条件将永远继续执行循环体。在infinte循环中就是这种情况。
例子:
```java
// Infinite For Loop
for ( ; ; )
{
// some code here
}
// Infinite While Loop
while (true)
{
// some code here
}
// Infinite Do While Loop
do
{
// some code here
} while (true);
```
通常情况下,如果您的循环无限运行,则该错误不应发生,因为无限循环不会停止并阻止程序的其余部分运行。
```java
for(int i=0;i<100;i++){
if(i==49){
i=0;
}
}
```
上面的循环无限运行因为每次我接近49它都被设置为0.这就是说我永远不会达到100来终止循环所以循环是一个无限循环。
但是在这样的循环中停留的程序将无限期地继续使用计算机资源。这是不合需要的,并且是一种“运行时错误”。
为了防止错误程序员使用break语句来摆脱循环。中断仅在特定条件下执行。使用像if-else这样的选择语句可以保证相同。
```java
while (true)
{
// do something
if(conditionToEndLoop == true)
break;
// do more
}
```
在常规循环上使用无限循环的主要优点是可读性。
有时,如果循环在中间结束,而不是在结束/开始,则循环体更容易理解。在这种情况下,无限循环将是更好的选择。