一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java中switch語句的用法介紹

java中switch語句的用法介紹

2023-06-23 01:02未知服務器之家 Java教程

本篇文章和大家了解一下java中switch語句的用法介紹。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有所幫助。 一. switch分支結構 1. 簡介 switch結合case,能夠判斷一個變量或表達式與一系列值中的某個值是否相等,這

本篇文章和大家了解一下java中switch語句的用法介紹。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有所幫助。

一. switch分支結構

1. 簡介

switch結合case,能夠判斷一個變量或表達式與一系列值中的某個值是否相等,這里的每個值都被稱為一個分支。switch語句在執行時,會先進行值的匹配,匹配成功時會進入到對應case語句。再根據是否有 break語句,判斷是否繼續輸出,或是跳出當前switch判斷。

2. 基本語法

在使用switch之前,首先我們得記住它的基本語法結構,其基本語法格式如下:

switch(值){?
????case?值1:?
????????//switch中的值與值1相等時執行的代碼?
??????break;?//可選
????case?值2:?
????????//switch中的值與值2相等時執行的代碼?
??????break;?//可選
????case?值3:?
????????//switch中的值與值3相等時執行的代碼?
??????break;?//可選
????case?值4:?
????????//switch中的值與值4相等時執行的代碼?
??????break;?//可選
????default:?
????????//switch中的值與以上所有值都不相等時執行的代碼?
??????break;?//可選
}

那么這個語法具體有哪些要求呢?請繼續往下看。

3. 語法規則(重點)

根據上面介紹的switch語法結構,再給大家詳細說一下switch的語法規則和要求。

  • switch(值)語句中的”值“,支持的類型有如下幾類:


    • 整型:byte、short、int 、char及其對應的包裝類;

    • 枚舉類型,從JDK 5開始支持(后面會詳細講解枚舉類型);

    • String類型,從JDK 7開始支持,同時case標簽后的值必須是字符串常量或字面量。

  • switch后面可以有多個 case 語句,每個 case 后都要跟一個待比較的值和冒號。

  • case標簽后面值的數據類型必須與switch(值)中的數據類型相同,且只能是常量或者字面常量。

  • 當switch(值)的值與 case語句中的值相等時,case標簽后面的語句開始執行,遇到break標簽時停止執行switch語句。

  • case語句中不一定非要帶有break語句。如果case后沒有 break 語句,程序會繼續執行下一個case 語句,直到出現 break 語句,這種現象叫做”case穿透“。

  • switch語句中可以包含一個default默認分支,該分支一般是 switch 語句的最后一個分支,當switch的值和case語句的值不相等時執行。default 分支中不用帶有break 語句,另外該分支可以放在任何位置,但建議寫在最后面。

4. 執行邏輯

根據上面的語法規則,我們可以結合下圖來理解switch語句的執行邏輯。switch的執行邏輯,其實就相當于是把多種情況分別列出,根據我們輸入的值來判斷符合哪種情況。符合哪個情況,就進入到對應的分支里面去執行,整體的執行邏輯就是這樣的,如下圖所示:

java中switch語句的用法介紹

  • if和switch都是Java里的分支選擇語句,它倆都屬于條件分支語句;

  • 很多時候,if和swich可以實現的效果類似。

  • 2. 不同點

    • switch結構只能處理等值條件判斷的情況,且條件必須是整型、枚舉變量或字符型變量;

    • 多重if選擇結構沒有switch結構的諸多限制,特別適合某個變量處于某個連續區間時的情況;

    • if比switch應用范圍更廣、更靈活。if可以實現的條件判斷,switch不一定能夠實現;switch可以實現的條件判斷,if肯定可以實現。

    • if 在應用中更為常見,但switch的結構更清晰。

    • switch使用查找表比對的方式,使得case的條件必須是連續的常量,if語句則沒有這些限制。

    • 一般情況下,switch比if-else效率更高。 因為switch內部使用了Binary Tree算法,不管有多少個case,都只計算一次值,直接跳轉,不需逐個比較查詢,除非是if-else的第一個條件就為true。

    • switch的效率其實與分支數無關。只有當分支比較少時,if語句的效率才比switch高,因為switch有跳轉表。當分支較多時,推薦使用switch語句。

    以上就是java中switch語句的用法介紹的簡略介紹,當然詳細使用上面的不同還得要大家自己使用過才領會。如果想了解更多,歡迎關注***行業資訊頻道哦!

    延伸 · 閱讀

    精彩推薦
    主站蜘蛛池模板: 国产二区视频 | 好大好深视频 | 女人被男人躁得好爽免费视频 | 含羞草传媒网站免费进入欢迎 | 亚洲伦理影院 | 182免费在线观看 | 黄篇网站在线观看 | 麻豆网站在线观看 | 色就色综合 | 色姑娘久 | 国产在线欧美日韩精品一区二区 | 国产精品麻豆99久久 | 精品亚洲视频在线观看 | 免费观看国产精品 | 亚洲男人天堂av | lubuntu网页版在线 | 免费观看在线观看 | 国产午夜免费不卡精品理论片 | 日本道在线播放 | 麻生希在线观看 | 60岁妇女毛片免费观看 | 久久精品男人影院 | www.5151淫| 高清国产欧美一v精品 | 猛h辣h高h文湿校园1v1 | 美女又爽又黄免费 | 好姑娘在线观看完整版免费 | 超级乱淫伦短篇小说做车 | 成年人视频在线免费观看 | 母性本能| 91小视频在线观看免费版高清 | 亚洲精品丝袜在线一区波多野结衣 | 色琪琪原网站亚洲香蕉 | 四虎影院网址大全 | 欧美香蕉人人人人人人爱 | 亚洲日本va中文字幕 | 国产好痛疼轻点好爽的视频 | 91麻豆国产精品91久久久 | 牛人国产偷窥女洗浴在线观看 | 三上悠亚国产精品一区 | 18hdxxxx中国|