1. 程式人生 > 實用技巧 >do{}while(false)的用法

do{}while(false)的用法

do{}while(false):

在工作中我們能經常發現有人寫do{}while(false) 這樣的程式碼,初看時讓人迷惑不解,按照上面的語法do{}while(false)這樣 do{} 裡面的程式碼只會執行一次的啊,那麼問題來了,為什麼要這樣寫?

試想,我們在工作中是不是經常會遇到一種情況:第二個判斷需要依賴第一個判斷的結果,甚至第三個判斷需要依賴第二個判斷的結果。如下樣式的程式碼:

if (one == true) {
        
    if (two == true) {
            
        if (three == true) {
                
            
//第三個依賴第二個判斷結果,第二個依賴第一個判斷結果。 //... } } }

那這樣的程式碼是不是看起來好惡心,各種判斷巢狀在一起,很是不容易理清程式碼邏輯,而且很容易出錯。那有沒有一種清爽的程式碼風格來解決這個問題呢?答案肯定是有的,就是我們上面提到do{}while(false)

那要如何用程式碼實現呢,請看下面的程式碼示例:

do {
    if (one == false) {
            
        break;
    }
    if (two == false) {
            
        break;
    }
    if (three == false) {
            
        break;
    }
} while (false);

  

既然後面的判斷依賴前面的判斷結果,那麼所有的條件都去判斷是否等於false,等於false的直接break跳出do while 迴圈。這樣的程式碼風格是不是比剛才那種寫法清爽多了。

結論:

do{}while(false)最大意義是:簡化if else 的巢狀結構判斷邏輯。