温馨提示×

java怎么根据属性获取枚举对象

小亿
160
2023-10-11 22:50:12
栏目: 编程语言

在Java中,可以使用Enum.valueOf()方法根据属性值获取枚举对象。

假设有一个名为Color的枚举类,包含颜色的属性值,可以按照以下方式获取枚举对象:

enum Color {
RED("红色"),
BLUE("蓝色"),
GREEN("绿色");
private String value;
Color(String value) {
this.value = value;
}
public String getValue() {
return value;
}
}

然后,根据属性值获取枚举对象可以使用Enum.valueOf()方法:

String value = "蓝色";
Color color = Enum.valueOf(Color.class, value);

在上面的示例中,Enum.valueOf()方法接收两个参数:枚举类的Class对象和属性值。它会返回与属性值匹配的枚举对象,如果找不到匹配的枚举对象,则会抛出IllegalArgumentException异常。

注意事项:

  • 属性值必须与枚举常量的属性值完全匹配,包括大小写。

  • 由于Enum.valueOf()方法会抛出异常,因此在使用之前最好使用try-catch块进行异常处理。

希望对你有帮助!

0