我们在 Java 中可以使用带有字符串的 Switch 语句吗?


switch 语句允许对变量进行测试以查看其是否与值列表相等。每个值称为一个 case,并且对每个 case 都会检查 switch 语句控制的变量。

语法

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

switch 语句中的字符串

是的,我们可以在 Java 中对带字符串的 switch 语句使用。在执行此操作时,您需要记住以下几点。

  • 如果您处理的数据也是字符串,则建议在 switch 语句中使用字符串值。
  • switch 语句中的表达式不能为 null,否则将引发 NullPointerException(运行时)。
  • switch 语句中字符串的比较区分大小写。即,您传递的字符串和 case 的字符串应该相等,并且应该使用相同大小写(大写或小写)。

示例

以下示例演示了在 switch 语句中使用字符串。

import java.util.Scanner;
public class SwitchExample {
   public static void main(String args[]) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Available models: Activa125(act125), Activa5G(act5g),"
         + " Accesses125(acc125), Vespa(ves), TvsJupiter(jup)");
      System.out.println("Select one model: ");
      String model = sc.next();
      switch (model) {
         case "act125":
            System.out.println("The price of activa125 is 80000");
            break;
         case "act5g":
            System.out.println("The price of activa5G is 75000");
            break;
         case "acc125":
            System.out.println("The price of access125 is 70000");
            break;
         case "ves125":
            System.out.println("The price of vespa is 90000");
            break;
         case "jup":
            System.out.println("The price of tvsjupiter is 73000");
            break;
         default:
            System.out.println("Model not found");
            break;
      }
   }
}

输出

Available models: Activa125(act125), Activa5G(act5g), Accesses125(acc125), Vespa(ves), TvsJupiter(jup)
Select one model:
act125
The price of activa125 is 80000

更新日期:2019-07-30

10 千次以上浏览

开启你的 职业

完成课程获得认证

开始吧
广告
© . All rights reserved.