歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Java 如何優化if語句嵌套

我們平時寫if,switch或for語句是常有的事兒,也一定寫過多層if或for語句嵌套的情況,如果代碼裡的嵌套超過3層,閱讀起來就會非常困難了。我們應該盡量避免代碼嵌套多層,最好不要超過2層。

if語句嵌套的問題

多層if語句嵌套是常有的事情,有什麼好的方法可以減少嵌套呢?

1 盡早終止函數或返回數據

如果符合某個條件下可以直接終止函數,則應該將這個條件放在第一位。我們來看看下面的例子。


if(condition1) {
    if(condition2){
        if(condition3){
        }
        else{
            return;
        }   
    }
    else{
        return;
    }   
}
else {
    return;
}

這段代碼中if語句嵌套了3層,看起來已經很復雜了,我們可以將最後面的return提取到最前面去。

if(!condition1){
    return;
}
if(!condition2){
    return;
}
if(!condition3){
    return;
}
//doSomething

這段代碼中,我們把condition1等於false的語句提取到前面,直接終止函數,將多層嵌套的if語句重構成只有一層if語句,代碼也更清晰了。

注意:一般情況下,我們寫if語句會將條件為true的情況寫在前面,這也比較符合我們的思維習慣。如果是多層嵌套的情況,應該優先減少if語句的嵌套

2 提取內層嵌套為一個函數進行調用

多層嵌套的時候,我們還可以將內層嵌套提取到一個新的函數中,然後調用該函數,這樣代碼也就更清晰了。

Copyright © Linux教程網 All Rights Reserved