iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 27
0
自我挑戰組

JAVA系列 第 27

JAVA的Switch

  • 分享至 

  • xImage
  •  

switch是Java提供的另一個條件判斷陳述式,它只能比較數值或字元,不過別以為這樣它就比if 來得沒用,使用適當的話,它可比if判斷式來得有效率;switch的語法架構如下:
switch(變數名稱或運算式) {
case 符合數字或字元:
陳述句一;
break;
case 符合數字或字元:
陳述句二;
break;
default:
陳述三;
}

首先看看switch的括號,當中置放您想要取出數值的變數,取出數值之後,程式會開始與case中所設定的數字或字元作比對,如果符合就執行以下的陳述句,直到遇到break後離開switch區塊,如果沒有符合的數值或字元,則會執行default後的陳述句, default不一定需要,您可以省去這個部份。

switch語句是Java提供的一種重要的分支語句,它用於判斷某個表示式的值,根據不同的值執行不同的分支語句。需要指出的是,Java的switch語句限制很多,而且還有非常容易出錯的陷阱,使用時要非常的小心。

  1. default分支
    switch語句之後可以包含一個default分支。default分支並不是無條件執行的分支,執行的潛在條件是,表示式的值與前面分支的值都不相等。也就是說,在正常情況下,只有當switch語句的前面分支沒有獲得執行時,default分支才會獲得執行的機會。
    2.break語句
    在case分支後的每個程式碼後都有一個break;語句,這個break;語句具有極其重要的意義:用於終止當前分支的執行體。如果某個case分支之後沒有使用break;來終止這個分支的執行體,即使使用花括號來保衛該分支的執行體也是無效的。 Java一旦找到匹配的case分支,程式就開始執行這個case分支的執行體,不在判斷與後面的case、default標籤的條件是否匹配,除非遇到break;才會結束執行體。
  2. Java7增強的switch表示式
    在Java7之前,switch語句的表示式只能有byte、short、int、char、enum5中資料型別。從Java7開始,switch表示式的型別可以是String型別,但不能是long、float、double等其他基本型別。

上一篇
JAVA的Wrapper類別
下一篇
JAVA-Static類別成員
系列文
JAVA30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言