我們在寫代碼當中用到最多的應該就是if else。由於if else可以代替switch case的功能,所以我們在很多場景選擇了if else而沒有使用switch case,其實有些場景之下使用switch case的效果更好一些。
if語句可以做條件判斷也可以做區間判斷,在執行一個if內容後自動結束,且else只能放在最後面執行。switch只能做固定值判斷,case的值爲傳入的參數,遇到break結束,default可以放在任何位置。
if(條件1) {
執行條件1;
} else if(條件2) {
執行條件2;
} else {
執行條件3;
}
switch (參數) {
case 1 :
執行條件1;
break;
case 2 :
執行條件2;
break;
default :
執行條件3;
}
性能問題:一般建議在固定值判斷的時候使用switch,在判斷區間範圍的時候使用if。switch的查找類似於二叉樹,而if則使用的是線性查找,所以當固定值判斷的時候,參數條件在三個以內的時候使用哪個無所謂,但判斷條件大於三個的時候使用switch性能更好一些。