Java中Enum类的valueOf()方法接受一个String值,并返回一个指定类型的枚举常量。
让我们创建一个名称为Vehicles的枚举,其中包含5个常量,代表5个不同scoters的模型,其价格为值,如下所示-
enum Vehicles { //带值的常量 ACTIVA125(80000), ACTIVA5G(70000), ACCESS125(75000), VESPA(90000), TVSJUPITER(75000); //Instance variable private int price; //构造函数初始化实例变量 Vehicles(int price) { this.price = price; } //静态显示价格的方法 public int getPrice(){ return this.price; } }
下面的Java程序从用户接受一个String值,使用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