Java 中的 switch case 語句是什麼?如何使用它?


switch 語句允許將變數與值的列表進行相等性測試。每個值稱為一個 case,系統會檢查被切換的變數是否與每個 case 匹配。

語法

switch(expression) {
   case value :
      // Statements
      break;
   case value :
      // Statements
      break;
   // You can have any number of case statements.
   default :
      // 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 為 true 時,可以使用 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年2月25日

343 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

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