switch语句的执行顺序
標準的switch語句用法
integral-selector 位置填入選擇因子,一般為變量或者表達式,此處的類型應于 integral-values 處的類型保持一致; integral-values 位置應填入整型數字或者單個字符,Java中也可以填入枚舉類型;每一個 case 選擇分支后都跟隨一個 break 以跳出 switch 分支,也可不添加 break ,但是繼續往下執行分支結構,直至分支結構結束; default 后的語句是默認情況,即所有的分支都不符合時執行 default 后的語句(即所有的 case 不匹配時);所有分支后的 statement 如果是多個語句組成的語句塊應該使用 { } 框起來。
Tips: 如果 default 語句或者 case 分支語句位于 switch 塊的末尾,不添加 break 也會自動跳出分支,如果 default 語句位于 switch 塊的頭部,那么就需要添加 break。
switch 語句所支持的類型更新:
JDK 1.5 之前,僅僅支持整型和字符型
JDK 1.5 之后,新增支持整型和字符型的包裝類和枚舉類型
JDK 1.7 之后,新增支持字符串類型
舉個栗子
public static void main(String[] args) {String[] s = {"hello", "haha", "hi", "xiexie", "haha", "thanks", "haha"};for(String c : s) {switch(c) {case "hello":System.out.println("hello");break;case "hi":System.out.println("hi");break;case "haha":System.out.println("haha");break;default:System.out.println("sorry");break;}} }Tips: 在基礎的用法上,switch 語句在 Java 和 c語言 中的用法基本一致。
switch語句的執行順序
例如:分析下面程序的打印結果
當字符 c 不為 1 、 2 或 3 時,執行 default 語句,由于缺少 break ,所以會繼續執行第一、第二和第三條分支:v1、v2、v3、v4 進行了 3 次自增;
當字符 c 為 1 時,執行第一條 case 分支,由于缺少 break ,所以會繼續執行第二和第三條分支:v1 、v2 和 v3 要進行 2 次自增;
當字符 c 為 2 時,執行第二條 case 分支,由于缺少 break ,所以會繼續執行第三條分支:v2 和 v3 要進行 1 次自增;
當字符 c 為 3 時,執行第三條 case 分支,由于位于 switch 塊的末尾,所以執行完畢就推出 switch 塊:v3 要進行 1 次自增;
總的來說,v4 進行了 3 次自增、v1 進行了 5 次自增、v2 進行了 6 次自增、v3 進行了 7 次自增
打印結果:3 5 6 7
Tips: default 語句和 case 語句一樣,缺少 break 語句,就無法跳出 switch 分支,會繼續執行下一條分支,如果調換例中 default 語句的位置,結果將會發生變化。
總結
以上是生活随笔為你收集整理的switch语句的执行顺序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MICROCHIP的PIC16F1519
- 下一篇: 如何用微博推广淘宝店铺