2017-07-11 40 views
-4

希望得到一個簡單的問題:我只是想知道是否有一個將多個語句放在else中或使用else-ifs的約定。那麼,是不是通常最好使用else語句,以及它內部的語句,像這樣:是否最好將語句放在else語句中或使用多個else-if語句?

if(r>0){ 

    return x; 

} else { 

    if(completed==false){ 

     return y; 

    } else if(started==true){ 

     return z; 

    } else{ 

     return xx; 
    }} 

,或者使用其他IFS,像這樣:

if(r>0){ 

    return x; 

} else if(completed==false){ 

    return y; 

} else if(started==true){ 

     return z; 

}else{ 

     return xx; 

} 
+1

主要基於觀點的問題在這裏題外話 –

+0

我想知道是否有一個約定,因此使它不基於意見。 – Allball103

+1

但是,如果沒有,我會刪除它 – Allball103

回答

1

這主要意見爲基礎。不過,我相信這個:

if (condition1) { 
    // do stuff 
} 
else if (condition2) { 
    // do stuff 
} 
else { 
    // do stuff 
} 

比嵌套的if-else塊更容易閱讀和遵循。

編輯:

正如下面Porschiey指出,switch語句是優選的,以多個if/else語句。

switch (condition) { 
    case (a): 
     // do something 
    case (b): 
     // do something else 
} 
+0

多個相關的if-blocks可以更好地閱讀並表示爲switch/case語句。這就是爲什麼像Resharper或StyleCop這樣的工具通常默認推薦你代表它們的原因。 – Porschiey