如何在Java中将String转换为枚举?

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

以上是 如何在Java中将String转换为枚举? 的全部内容, 来源链接: utcz.com/z/348815.html

回到顶部