1. 程式人生 > >關於死循環while(true){}或for(;;){}的總結

關於死循環while(true){}或for(;;){}的總結

選擇結構 for bsp sys 文字 產生 標識符 while 一個

關於死循環while(true){}或for(;;){}的總結
1、基本用法:
while(true){
語句體;
}

for(;;){
語句體;
}

以上情況,語句體會一直執行。


2、跳出死循環
情形一:while(true){
swtich(n){
case 1:
Syso....
break;
case 2:
syso...
break;
}
break
}

由於break只跳出離自己最近的循環體,所以case語句後的break,跳出的是switch循環,swtich外的break才是跳出while(true).
如果想要在case1後跳出while(true)循環,需要在case1後的break後和while前加標識符(任意英文字符或字符串都可),如下 :
a: while(true){
swtich(n){
case 1:
Syso....
break a;
case 2:
syso...
break;
}
break
}

情形二:while(true){
if(){
syso...
}else{
syso...
break;
}
break;
}

此種情形需註意:if{}else{}為選擇結構,並非循環結構。else語句體中的break對if語句不產生影響,執行到此break時,會直接跳出死循環,即兩個break留一個即可;


總結:死循環中如果嵌套入另一循環或swtich選擇結構,需註意是否使用標識符;死循環中如果沒有嵌套循環和swtich結構,則break會直接跳出死循環。

關於死循環while(true){}或for(;;){}的總結