2015-09-15 28 views
-5

只是一般的Java問題。爲什麼存在空變量?我正在對CS學生進行一些介紹,其中一個最常見的錯誤是他們不應該是的分號。例如爲什麼Java有一個空的陳述?

if(isTired());{ 
    sleep(10); 
} 

開括號之前錯位分號保持if語句無法正常工作,我想知道爲什麼零線做了在Java程序中。在這個例子中,null看起來是一種損害,並且想知道什麼時候有人會在編碼時使用它。因爲有在Java中,你想要什麼都不做一些地方

+2

嘗試閱讀更多關於'null'實際上的含義:http://stackoverflow.com/questions/2707322/what-is-null-in-java – Zarwan

+4

這不是空值。它也不是一個變量。這只是一個空洞的陳述。一個空的語句在如下場景中很有用:'while(somethingIDontLikeIsTrue());'。 –

+1

http://stackoverflow.com/questions/14112515/semicolon-at-end-of-if-statement – ArcaneEnforcer

回答

2

空語句是有用的。他們不常見,但他們存在。通常他們是你必須作爲構造的一部分加入的'強制'陳述。例如,如果你想要寫一個for循環,只有終止在一個「破」,那麼你要在那裏什麼也沒有的爲「有條件」部分:

for (int i=0;;i++) { 
    int j = complexCalculation(i); 
    if (j<0 && complexCondition(j)) { 
    break; 
    } 
} 

如果空語句WASN」 t允許,那不會編譯。如果允許有的,但不是在其他地方,這將是不一致的(併爲編譯器作者的生活更加困難)。

現實的情況是,一旦你到了與語言相當熟練,造成意外加空語句錯誤是罕見的。