原文:Java Switch Statement – How to Use a Switch Case in Java,作者:Ihechikara Vincent Abba

当满足特定条件时,你可以使用 Java 中的 switch 语句来执行特定的代码块。

语法如下所示:

switch(expression) {
  case 1:
    // code block
    break;
  case 2:
    // code block
    break;
    case 3:
    // code block
    break;
  default:
    // code block
}

上面,将 switch 括号中的表达式(expression)与每种情况(case)进行了比较。当 expressioncase 相同时,执行 case 中对应的代码块。

如果所有 case 都不匹配 expression,则执行在 default 关键字下定义的代码块。

每当满足某个条件时(当 expressioncase 匹配时),我们使用 break 关键字来终止代码。

让我们看一些代码示例。

如何在 Java 中使用 Switch Case

看看下面的代码:

class CurrentMonth {
    public static void main(String[] args) {
        
        int month = 6;
        
        switch (month) {
          case 1:
            System.out.println("January");
            break;
          case 2:
            System.out.println("February");
            break;
          case 3:
            System.out.println("March");
            break;
          case 4:
            System.out.println("April");
            break;
          case 5:
            System.out.println("May");
            break;
          case 6:
            System.out.println("June");
            break;
          case 7:
            System.out.println("July");
            break;
          case 8:
            System.out.println("August");
            break;
          case 9:
            System.out.println("September");
            break;
          case 10:
            System.out.println("October");
            break;
          case 11:
            System.out.println("November");
            break;
          case 12:
            System.out.println("December");
            break;
            
            // June
        }
    }
}

在上面的代码中,June 被打印出来。不用担心庞大的代码。以下介绍可帮助你理解:

我们创建了一个名为 month 的整数,并为其分配了一个值 6:int month = 6;

接下来,我们创建了一个 switch 语句,并将 month 变量作为参数传入:switch (month){...}

作为 switch 语句的表达式,month 的值将与代码中的每个 case 值进行比较。我们有 case 1 到 12。

month 的值是 6,因此它与 case 6 匹配。这就是 case 6 中的代码被执行的原因。其他代码块都被忽略了。

这是另一个简化的例子:

class Username {
    public static void main(String[] args) {
        
        String username = "John";
        
        switch (username) {
          case "Doe":
            System.out.println("Username is Doe");
            break;
          case "John":
            System.out.println("Username is John");
            break;
          case "Jane":
            System.out.println("Username is Jane");
            break;
            // Username is John
        }
    }
}

在上面的示例中,我们创建了一个名为 username 的字符串,其值为 “John”。

switch 语句中,username 作为 expression 传入。然后我们创建了三个 case——“Doe”、“John”和“Jane”。

在这三个类中,只有一个匹配 username 的值——“John”。结果,case "John" 的代码块被执行了。

如何在 switch 语句中使用默认关键字

在上一节的示例中,我们的代码被执行是因为一个 case 匹配了一个 expression

在本节中,你将了解如何使用 default 关键字。在没有任何 caseexpression 匹配的情况下,你可以将其用作后备。

这是一个例子:

class Username {
    public static void main(String[] args) {
        
        String username = "Ihechikara";
        
        switch (username) {
          case "Doe":
            System.out.println("Username is Doe");
            break;
          case "John":
            System.out.println("Username is John");
            break;
          case "Jane":
            System.out.println("Username is Jane");
            break;
          default:
            System.out.println("Username not found!");
            // Username not found!
        }
    }
}

上例中的 username 变量的值为 “Ihechikara”。

default 关键字的代码块将被执行,因为创建的 case 都不匹配 username 的值。

小结

在本文中,我们了解了如何在 Java 中使用 switch 语句。

我们还讨论了 Java 中 switch 语句的 expressioncasedefault 关键字,以及它们的用例和代码示例。

祝你编程愉快!