switch-case與if-else有相似的作用,都是表達分支的方式。 語法形式: switch語句的特點: type和case後面的值都必須是常量或常量表達式; break和default儘量不要省略(特殊用途下break可省略); 可以將switch語句理解成高速公路,case 常量 為入口, ...
switch-case與if-else有相似的作用,都是表達分支的方式。
語法形式:
1 switch(type){
2 case 常量1:
3 do something;
4 break;
5 case 常量2:
6 do something;
7 break;
8 default:
9 do something;
10 break;
11 }
switch語句的特點:
- type和case後面的值都必須是常量或常量表達式;
- break和default儘量不要省略(特殊用途下break可省略);
- 可以將switch語句理解成高速公路,case 常量 為入口,break 為出口;
- switch語句直接根據type的值跳具有相同常量的分支中,在此之前的分支被忽略,並且如果此分支內若沒有break,那麼將進入緊挨著的下一個分支執行。
- if-else語句則需要從第一個分支開始逐個判斷
switch語句也可以用來表示分段函數,常用技巧是用表示式作為type,執行表達式得到0或1則作為case後面的常量。雖然如此,使用switch語句在coding之前需要花更多時間構思,未必值得。