java switch 值_Java switch多值匹配操作详解
這篇文章主要介紹了Java switch多值匹配操作詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
我們都知道 switch 用來走流程分支,大多情況下用來匹配單個值,如下面的例子所示:
/**
* @author 棧長
*/
private static void test(int value) {
switch (value) {
case 1:
System.out.println("1");
break;
case 2:
System.out.println("1");
break;
case 3:
System.out.println("1");
break;
case 4:
System.out.println("1");
break;
case 5:
System.out.println("1");
break;
case 6:
System.out.println("0");
break;
case 7:
System.out.println("0");
break;
default:
System.out.println("-1");
}
}
相關閱讀:switch case數據類型。
大概的意思就是,周一到周五輸出:1,周六到周日輸出:0,默認輸出-1。
這樣寫,很多重復的邏輯,冗余了。
也許這個例子不是很合適,用 if/ else 更恰當,但這只是個例子,實際開發中肯定會有某幾個 case 匹配同一段邏輯的情況。
那么,如何讓多個 case 匹配同一段邏輯呢?
如下面例子所示:
/**
* @author 棧長
*/
private static void test(int value) {
switch (value) {
case 1: case 2: case 3: case 4: case 5:
System.out.println("1");
break;
case 6: case 7:
System.out.println("0");
break;
default:
System.out.println("-1");
}
}
把相同邏輯的 case 放一起,最后一個 case 寫邏輯就行了。
格式化后就是這樣了:
/**
* @author 棧長
*/
private static void test(int value) {
switch (value) {
case 1:
case 2:
case 3:
case 4:
case 5:
System.out.println("1");
break;
case 6:
case 7:
System.out.println("0");
break;
default:
System.out.println("-1");
}
}
是不是很騷?
其實這不是最合適的最好的寫法,在 Java 12 中還可以更騷。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持聚米學院。
總結
以上是生活随笔為你收集整理的java switch 值_Java switch多值匹配操作详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 奇虎回应委员退出360督导委员会 称流氓
- 下一篇: java冒泡排序找最大的值_(13)數組