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

1.6 KiB
Raw Blame History

title localeTitle
Infinite Loops 无限循环

无限循环

infinte循环是一个循环语句 for while do-while ),它不会自行结束。

循环语句的测试条件决定循环体是否执行。因此始终为真的测试条件将永远继续执行循环体。在infinte循环中就是这种情况。

例子:

// 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); 

通常情况下,如果您的循环无限运行,则该错误不应发生,因为无限循环不会停止并阻止程序的其余部分运行。

for(int i=0;i<100;i++){ 
 
    if(i==49){ 
    i=0; 
    } 
 
 } 

上面的循环无限运行因为每次我接近49它都被设置为0.这就是说我永远不会达到100来终止循环所以循环是一个无限循环。

但是在这样的循环中停留的程序将无限期地继续使用计算机资源。这是不合需要的,并且是一种“运行时错误”。

为了防止错误程序员使用break语句来摆脱循环。中断仅在特定条件下执行。使用像if-else这样的选择语句可以保证相同。

while (true) 
 { 
    // do something 
 
    if(conditionToEndLoop == true) 
        break; 
 
    // do more 
 } 

在常规循环上使用无限循环的主要优点是可读性。

有时,如果循环在中间结束,而不是在结束/开始,则循环体更容易理解。在这种情况下,无限循环将是更好的选择。