如何在 Java 中将字符串转换为枚举?
java 8object oriented programmingprogramming
Java 中 Enum 类的 valueOf() 方法接受字符串值并返回指定类型的枚举常量。
示例
让我们创建一个名为 Vehicles 的枚举,其中包含 5 个常量,代表 5 种不同车型,其价格为值,如下所示 −
enum Vehicles { //具有值的常量 ACTIVA125(80000), ACTIVA5G(70000), ACCESS125(75000), VESPA(90000), TVSJUPITER(75000); //实例变量 private int price; //用于初始化实例变量的构造函数 Vehicles(int price) { this.price = price; } //显示价格的静态方法 public int getPrice(){ return this.price; } }
以下 Java 程序接受来自用户的字符串值,使用 valueOf() 方法将其转换为 Vehicles 类型的枚举常量,并显示所选常量的值(价格)。
public class EnumerationExample { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("Available scoters: [activa125, activa5g, access125, vespa, tvsjupiter]"); System.out.println("Enter the name of required scoter: "); String name = sc.next(); Vehicles v = Vehicles.valueOf(name.toUpperCase()); System.out.println("Price: "+v.getPrice()); } }
输出
Available scoters: [activa125, activa5g, access125, vespa, tvsjupiter] Enter the name of required scoter: activa125 Price: 80000