一、概述
Java switch-case語句是一種條件分支語句,可以根據不同的變量值執行不同的代碼塊。它比一系列if-else語句的代碼量更少,可讀性更好,適用於有多個選項的情況。
二、語法
switch(變量表達式){
case 常量1:
//執行語句1
break;
case 常量2:
//執行語句2
break;
case 常量3:
//執行語句3
break;
default:
//執行默認語句
}
三、示例
int day = 3;
switch(day){
case 1:
System.out.println("周一");
break;
case 2:
System.out.println("周二");
break;
case 3:
System.out.println("周三");
break;
default:
System.out.println("其他");
}
輸出結果為“周三”。
四、注意事項
1、case語句必須是整數常量表達式
case語句中的變量必須是整數類型或可以自動轉換為整數類型的類型,如byte、short、int、char、枚舉類型等。
2、重複的case語句
在一個switch語句中,case語句中的變量值不能相同,否則會出現編譯錯誤。
int day = 2;
switch(day){
case 1:
System.out.println("周一");
break;
case 2:
System.out.println("周二");
break;
case 2:
System.out.println("周三");
break;
default:
System.out.println("其他");
}
輸出會出現編譯錯誤:“Duplicate case label ‘2’”。
3、break語句的作用
在每一個case語句塊結束之後,必須加上break語句。否則,程序會繼續執行下一個case語句塊,直到遇到break語句或是整個switch語句塊執行完畢。
4、default語句的作用
default語句不是必須的,但是在一些情況下,它可以替代if-else語句的最後一個else塊,執行一些默認的操作。
5、嵌套switch語句
在一個switch塊中可以嵌套另一個switch塊,但是要注意變量重名和break語句的使用。
int i = 2;
int j = 3;
switch(i){
case 1:
switch(j){
case 2:
System.out.println("case1-2");
break;
default:
System.out.println("case1-default");
}
break;
case 2:
System.out.println("case2");
break;
default:
System.out.println("default");
}
如果i=1且j=2,輸出結果為“case1-2”;如果i=1且j=3,輸出結果為“case1-default”;如果i=2,輸出結果為“case2”;如果i和j都不在上述條件中,輸出結果為“default”。
五、總結
Java switch語句是一種常用的條件分支語句,可根據變量值執行不同的代碼塊,代碼可讀性強。需要注意的是,case語句中的變量必須是整數類型或可以自動轉換為整數類型的類型;case語句中的變量值不能相同;每一個case語句塊結束之後,必須加上break語句;default語句可以替代if-else語句的最後一個else塊;在一個switch塊中可以嵌套另一個switch塊。
原創文章,作者:BQNW,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/132871.html
微信掃一掃
支付寶掃一掃