2014-03-19 52 views
2

我不明白爲什麼有人會使用(真)測試時會出現什麼情況?什麼時候是真的和假的?

while(true) { 
    //do something 
} 

代替

boolean condition = true; 
while(condition == true) { 
    //do something 
} 

後者是超級容易理解,而前者不是。

那麼,什麼樣的條件(真)檢查?什麼時候(真)是真的,什麼時候假?

+2

其無限循環 –

+1

老電子遊戲編程101! – Averroes

+7

我不明白爲什麼有人會使用'while(condition == true){'而不是'while while(condition){' – Pshemo

回答

8

什麼時候是(true)true,什麼時候是false?

它永遠是真的,它永遠不會是假的。

有些人使用while(true)循環,然後使用break退出他們,當一定條件爲真,但它通常是相當草率的做法,不建議。如果不使用breakreturn,System.exit()或其他某種機制,它將永遠保持循環。

+0

是否有任何可能的方法它可能是假的? – Gregg1989

+0

@ Gregg1989不! – berry120

+4

@ Gregg1989,請讓我弄清楚這一點。你問是否有什麼方法可能會導致錯誤? – davmac

1

(true)始終爲真。循環語句始終執行。如果你必須打破循環,我們必須使用break語句。

2

condition == true也將返回一個布爾值,它是'true'。所以直接使用它來代替所有這些。

2

while(true)循環當然會一直迭代。您必須使用breakSystem.exit()或可能是return手動分解它。

while(condition == true)將是真實的,直到conditiontrue。你可以通過設置condition = false來做到這一點。至少,我永遠不會使用while(condition == true)。相反,只需使用while (condition)即可。這就足夠了。

1

while(true)用於無限循環。他們將永遠循環,因爲true總是true他們通常用於當你必須做某事,直到滿足某些條件。然後,與break聲明

while(true) { 
    //attempt to satisfy some condition 

    if (satisfied) { 
    break; 
    } 
} 
2

出口雖然我們不知道什麼時候,我們遇到這樣的情況,我們需要它的情況。我們也可以有無限循環。

for(;;) {//Code here} 
相關問題