Java中Switch的使用方法及新特性
一、switch語句的適用場景
在分支結(jié)構(gòu)中,我們除了使用if-else或者是if-else if之外,當(dāng)分支量過大的時候,我們即可選擇使用switch語句進行選擇。

二、switch語句的使用方法
當(dāng)我們需要實現(xiàn)輸入 1 1 1的時候打印出Hello,輸入 2 2 2的時候打印出World,輸入其他數(shù)字的時候打印出error。
在switch語法中,switch()圓括號中寫入判斷的數(shù)字,當(dāng)case語句的值等于圓括號內(nèi)的值時,將執(zhí)行相應(yīng)代碼塊的代碼。
public class SwitchDemo {
public static void main(String[] args){
int choose=1;
switch(choose){
case 1:System.out.println("Hello");break;
case 2:System.out.println("World");break;
default:System.out.println("error");
}
}
}
當(dāng)每段case語句后需要跟一個break語句結(jié)束,否則將繼續(xù)進行下一個case語句內(nèi)。且default語句不能直接觸發(fā),當(dāng)switch內(nèi)的值與case值均不匹配時,將會執(zhí)行default內(nèi)的代碼語句。
三、Java語言中switch的新特性
在Java7以前,switch內(nèi)的值僅支持byte、short、int、char類型或者枚舉。往后的版本中引入了對string類型的switch判斷。代碼如下:
public class SwitchDemo {
public static void main(String[] args){
string choose="one";
switch(choose){
case "one":System.out.println("Hello");break;
case "two":System.out.println("World");break;
default:System.out.println("error");
}
}
}四、switch 語句遵從規(guī)則:
①表達式必須計算出一個 char 、byte、short、int、string 類型等數(shù)據(jù),并且它必須用括號括住。
②值1,...,值N 必須與表達式的值具有相同的數(shù)據(jù)類型,當(dāng)表達式的值與 case 語句的值相匹配時,執(zhí)行該 case語句中的語句(每個 case 語句都順序執(zhí)行)
③ 關(guān)鍵字break是可選的,break 語句終止整個 switch 語句。若 break 語句不存在,下一個case 語句將被執(zhí)行。
④ 默認情況(default)是可選的,它用來指定情況都不為真時的操作,默認情況總是出現(xiàn)在switch 語句塊的最后。
總結(jié)
到此這篇關(guān)于Java中Switch的使用方法及新特性的文章就介紹到這了,更多相關(guān)Java Switch用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring?Boot?+?EasyExcel?+?SqlServer?進行批量處理數(shù)據(jù)的高效方法
在日常開發(fā)和工作中,我們可能要根據(jù)用戶上傳的文件做一系列的處理,本篇文章就以Excel表格文件為例,主要介紹了Spring?Boot?+?EasyExcel?+?SqlServer?進行批量處理數(shù)據(jù)的高效方法,需要的朋友可以參考下2024-06-06
springboot2+es7使用RestHighLevelClient的示例代碼
本文主要介紹了springboot2+es7使用RestHighLevelClient的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
Springboot MongoDB實現(xiàn)自增序列的項目實踐
在某些特定的業(yè)務(wù)場景下,會需要使用自增的序列來維護數(shù)據(jù),本文主要介紹了Springboot MongoDB實現(xiàn)自增序列的項目實踐,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
Java判斷范圍型的數(shù)據(jù)是否存在重疊的方法
遇到了個問題,同一天可以輸入多個時間段,但是每個時間段的時間不能出現(xiàn)重疊,這不就是判斷數(shù)據(jù)返回是否有重疊的變種嗎,所以本文給大家介紹了Java判斷范圍型的數(shù)據(jù)是否存在重疊的方法,需要的朋友可以參考下2024-07-07
SpringBoot2.0整合Shiro框架實現(xiàn)用戶權(quán)限管理的示例
這篇文章主要介紹了SpringBoot2.0整合Shiro框架實現(xiàn)用戶權(quán)限管理的示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
MyBatis學(xué)習(xí)教程(八)-Mybatis3.x與Spring4.x整合圖文詳解
這篇文章主要介紹了MyBatis學(xué)習(xí)教程(八)-Mybatis3.x與Spring4.x整合圖文詳解的相關(guān)資料,需要的朋友可以參考下2016-05-05

