我们能在 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