Java中switch的三種用法方式小結
從java14開始, switch語句有了一個很大的調整, 這就讓swicth語句有了更多的操作和選擇,在代碼上,更加的簡便靈活.
- switch 標準方式
- switch - > 用法:
- switch yield 用法:
標準方式
int dayOfWeek = 2;
switch (dayOfWeek) {
case 1:
System.out.println("星期一");
case 2:
System.out.println("星期二");
case 3:
System.out.println("星期三");
case 4:
System.out.println("星期四");
case 5:
System.out.println("星期五");
case 6:
System.out.println("星期六");
default:
System.out.println("星期日");
}輸出如下:
星期二
星期三
星期四
星期五
星期六
星期日
從輸出結果發(fā)現(xiàn)case代碼塊被穿透了,使用break防止case代碼執(zhí)行穿透,代碼如下:
int dayOfWeek = 2;
switch (dayOfWeek) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
default:
System.out.println("星期日");
break;
}輸出如下:
星期二
switch - > 用法:
使用switch標準方式編寫代碼太多的break造成代碼冗余可讀性不高 可以借助函數式接口和lambda表達式簡化書寫
代碼如下:
int dayOfWeek = 2;
switch (dayOfWeek) {
case 1 -> System.out.println("星期一");
case 2 -> System.out.println("星期二");
case 3 -> System.out.println("星期三");
case 4 -> System.out.println("星期四");
case 5 -> System.out.println("星期五");
case 6 -> System.out.println("星期六");
default -> System.out.println("星期日");
}
輸出結果如下:
星期二
switch yield 用法:返回值
先來開一段標準模式的代碼:
String weekday = null;
int dayOfWeek = 2;
switch (dayOfWeek) {
case 1:
weekday = "星期一";
break;
case 2:
weekday = "星期二";
break;
case 3:
weekday = "星期三";
break;
case 4:
weekday = "星期四";
break;
case 5:
weekday = "星期五";
break;
case 6:
weekday = "星期六";
break;
default:
weekday = "星期日";
break;
}
System.out.println(weekday);輸出結果如下:
星期二
從上面代碼不難看出我們通過條件匹配為變量賦值,再來看看switch yield的簡化寫法
int dayOfWeek = 2;
String weekday = switch (dayOfWeek) {
case 1:
yield "星期一";
case 2:
yield "星期二";
case 3:
yield "星期三";
case 4:
yield "星期四";
case 5:
yield "星期五";
case 6:
yield "星期六";
default:
yield "星期日";
};
System.out.println(weekday);輸出結果:
星期二
到此這篇關于Java中switch的三種用法方式小結的文章就介紹到這了,更多相關Java switch用法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
如何解決Project SDK is not defined問題
這篇文章主要介紹了如何解決Project SDK is not defined問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09
在啟動后臺 jar包時,使用指定的 application.yml操作
這篇文章主要介紹了在啟動后臺 jar包時,使用指定的 application.yml操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10

