我们能在 Java 中将 Switch 语句与字符串一起使用吗?

java 8object oriented programmingprogramming

switch 语句允许测试变量与值列表的相等性。每个值称为一个案例,并且针对每个案例检查要打开的变量。

语法

switch(expression) {
   case value:
      // 语句
      break;
   case value:
      // 语句
      break;
      // 您可以有任意数量的 case 语句。
      default :
    // 语句
}

switch 中的字符串

是的,我们可以在 Java 中使用带有字符串的 switch 语句。在这样做时,您需要牢记以下几点。

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

示例

以下示例演示了 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

相关文章