Java如何获取与字符串对应的枚举常量值?
valueOf()枚举类型的方法使您可以获取值对应于指定字符串的枚举常量。当我们传递枚举中不可用的字符串时,将引发异常。
package org.nhooo.example.fundamental;
enum Day {
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
}
public class EnumValueOfTest {
public static void main(String[] args) {
//使用valueOf()方法,我们可以获得一个枚举常量,其值
//value对应于作为参数传递的字符串。
Day day = Day.valueOf("SATURDAY");
System.out.println("Day = " + day);
day = Day.valueOf("WEDNESDAY");
System.out.println("Day = " + day);
try {
//以下行将产生异常,因为
//枚举类型不包含名为JANUARY的常量。
day = Day.valueOf("JANUARY");
System.out.println("Day = " + day);
} catch (IllegalArgumentException e) {
e.printStackTrace();
}
}
}