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)文章
ThreadLocal數(shù)據(jù)存儲結(jié)構(gòu)原理解析
這篇文章主要為大家介紹了ThreadLocal數(shù)據(jù)存儲結(jié)構(gòu)原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-10-10
Java 中的HashMap詳解和使用示例_動力節(jié)點Java學(xué)院整理
這篇文章主要介紹了Java 中的HashMap詳解和使用示例_動力節(jié)點Java學(xué)院整理,需要的朋友可以參考下2017-05-05
使用graalvm為帶有反射功能的java代碼生成native?image的示例詳解
graalvm讓native鏡像支持反射的關(guān)鍵是利用json提前告訴它哪些類的哪些方法會被反射調(diào)用,然后它就能力在運行時支持反射了,這篇文章主要介紹了如何使用graalvm為帶有反射功能的java代碼生成native?image,需要的朋友可以參考下2024-02-02
SpringData JPA中@OneToMany和@ManyToOne的用法詳解
這篇文章主要介紹了SpringData JPA中@OneToMany和@ManyToOne的用法詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10
mybatis?實現(xiàn)多層級collection嵌套
這篇文章主要介紹了mybatis?實現(xiàn)多層級collection嵌套,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03
Java中try-with-resources自動關(guān)閉資源的使用方法及注意事項
這篇文章主要介紹了Java中try-with-resources自動關(guān)閉資源的使用方法及注意事項,try-with-resources是Java?7引入的一種資源管理語法,用于自動關(guān)閉實現(xiàn)了AutoCloseable接口的資源,文中通過代碼將用法介紹的非常詳細,需要的朋友可以參考下2025-05-05
解決mybatis-plus動態(tài)數(shù)據(jù)源切換不生效的問題
本文主要介紹了解決mybatis-plus動態(tài)數(shù)據(jù)源切換不生效的問題,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01

