是否可以通过搜索其名称而不是值来获取枚举?例如:
public enum MyEnum {
TOTO("some value", 1);
ZOZO("some other value", 2);
}
我想要做的就像吸气鬼一样:
public static MyEnum getByName(String str) {
[...]
}
所以我能做到:
MyEnum foo = MyEnum.getByName("TOTO");
MyEnum bar = MyEnum.getByName("ZOZO");
答案 0 :(得分:3)
每个Java枚举都有方法valueOf(String name)
,它按名称返回枚举。
MyEnum foo = MyEnum.valueOf("TOTO");
MyEnum bar = MyEnum.valueOf("ZOZO");