Java switch 語句


switch 語句允許將變數與一系列值進行相等性測試。每個值都稱為一個 case,並且正在切換的變數將針對每個 case 進行檢查。

語法

增強型 for 迴圈的語法如下:

switch(expression) {
   case value :
      // Statements
      break; // optional
   
   case value :
      // Statements
      break; // optional
   
   // You can have any number of case statements.
   default : // Optional
      // Statements
}

switch 語句適用以下規則:

  • switch 語句中使用的變數只能是整數、可轉換為整數的型別(byte、short、char)、字串和列舉。

  • switch 語句中可以包含任意數量的 case 語句。每個 case 後面跟著要比較的值和一個冒號。

  • case 的值必須與 switch 中變數的資料型別相同,並且必須是常量或字面量。

  • 當正在切換的變數等於某個 case 時,該 case 後面的語句將一直執行到遇到 break 語句為止。

  • 遇到 break 語句時,switch 將終止,控制流跳轉到 switch 語句後面的下一行。

  • 並非每個 case 都需要包含 break。如果沒有 break,控制流將貫穿到後續的 case,直到遇到 break 為止。

  • switch 語句可以有一個可選的 default case,它必須出現在 switch 的末尾。當沒有一個 case 為真時,可以使用 default case 執行任務。default case 不需要 break。

流程圖


示例

線上演示

public class Test {

   public static void main(String args[]) {
      // char grade = args[0].charAt(0);
      char grade = 'C';

      switch(grade) {
         case 'A' :
            System.out.println("Excellent!");
            break;
         case 'B' :
         case 'C' :
            System.out.println("Well done");
            break;
         case 'D' :
            System.out.println("You passed");
         case 'F' :
            System.out.println("Better try again");
            break;
         default :
            System.out.println("Invalid grade");
      }
      System.out.println("Your grade is " + grade);
   }
}

輸出

 

使用各種命令列引數編譯並執行上述程式。這將產生以下結果:

Well done
Your grade is C

 



更新於:2020年6月15日

265 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.