Java中switch case 語句的用法:1、switch語句可以擁有多個case語句;2、case語句中的值的數(shù)據(jù)類型必須與變量的數(shù)據(jù)類型相同,而且只能是常量或者字面常量;3、當(dāng)遇到break語句時,switch語句終止。
Java中switch case 語句的用法:
語法
switch case 語句語法格式如下:
switch(expression){ case value : //語句 break; //可選 case value : //語句 break; //可選 //你可以有任意數(shù)量的case語句 default : //可選 //語句 }
相關(guān)學(xué)習(xí)推薦:Java視頻教程
立即學(xué)習(xí)“Java免費(fèi)學(xué)習(xí)筆記(深入)”;
switch case 語句有如下規(guī)則:
switch 語句中的變量類型可以是: byte、short、int 或者 char。從 Java SE 7 開始,switch 支持字符串 String 類型了,同時 case 標(biāo)簽必須為字符串常量或字面量。
switch 語句可以擁有多個 case 語句。每個 case 后面跟一個要比較的值和冒號。
case 語句中的值的數(shù)據(jù)類型必須與變量的數(shù)據(jù)類型相同,而且只能是常量或者字面常量。
當(dāng)變量的值與 case 語句的值相等時,那么 case 語句之后的語句開始執(zhí)行,直到 break 語句出現(xiàn)才會跳出 switch 語句。
當(dāng)遇到 break 語句時,switch 語句終止。程序跳轉(zhuǎn)到 switch 語句后面的語句執(zhí)行。case 語句不必須要包含 break 語句。如果沒有 break 語句出現(xiàn),程序會繼續(xù)執(zhí)行下一條 case 語句,直到出現(xiàn) break 語句。
switch 語句可以包含一個 default 分支,該分支一般是 switch 語句的最后一個分支(可以在任何位置,但建議在最后一個)。default 在沒有 case 語句的值和變量值相等的時候執(zhí)行。default 分支不需要 break 語句。
switch case 執(zhí)行時,一定會先進(jìn)行匹配,匹配成功返回當(dāng)前 case 的值,再根據(jù)是否有 break,判斷是否繼續(xù)輸出,或是跳出判斷。
實(shí)例
Test.java 文件代碼:
public class Test { public static void main(String args[]){ //char grade = args[0].charAt(0); char grade = 'C'; switch(grade) { case 'A' : System.out.println("優(yōu)秀"); break; case 'B' : case 'C' : System.out.println("良好"); break; case 'D' : System.out.println("及格"); break; case 'F' : System.out.println("你需要再努力努力"); break; default : System.out.println("未知等級"); } System.out.println("你的等級是 " + grade); } }
以上代碼編譯運(yùn)行結(jié)果如下:
良好 你的等級是 C
如果 case 語句塊中沒有 break 語句時,JVM 并不會順序輸出每一個 case 對應(yīng)的返回值,而是繼續(xù)匹配,匹配不成功則返回默認(rèn) case。
Test.java 文件代碼:
public class Test { public static void main(String args[]){ int i = 5; switch(i){ case 0: System.out.println("0"); case 1: System.out.println("1"); case 2: System.out.println("2"); default: System.out.println("default"); } } }
以上代碼編譯運(yùn)行結(jié)果如下:
default
如果 case 語句塊中沒有 break 語句時,匹配成功后,從當(dāng)前 case 開始,后續(xù)所有 case 的值都會輸出。
Test.java 文件代碼:
public class Test { public static void main(String args[]){ int i = 1; switch(i){ case 0: System.out.println("0"); case 1: System.out.println("1"); case 2: System.out.println("2"); default: System.out.println("default"); } } }
以上代碼編譯運(yùn)行結(jié)果如下:
1 2 default
如果當(dāng)前匹配成功的 case 語句塊沒有 break 語句,則從當(dāng)前 case 開始,后續(xù)所有 case 的值都會輸出,如果后續(xù)的 case 語句塊有 break 語句則會跳出判斷。
Test.java 文件代碼:
public class Test { public static void main(String args[]){ int i = 1; switch(i){ case 0: System.out.println("0"); case 1: System.out.println("1"); case 2: System.out.println("2"); case 3: System.out.println("3"); break; default: System.out.println("default"); } } }
以上代碼編譯運(yùn)行結(jié)果如下:
1 2 3
以上就是Java中switch case 語句問題的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
java怎么學(xué)習(xí)?java怎么入門?java在哪學(xué)?java怎么學(xué)才快?不用擔(dān)心,這里為大家提供了java速學(xué)教程(入門到精通),有需要的小伙伴保存下載就能學(xué)習(xí)啦!
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號