【发布时间】:2014-10-14 09:25:09
【问题描述】:
我想创建一个在传入参数的任何 Enum 类上实现 valueOf 的方法(并且还包装一些专门的错误/缺失名称代码)。
所以基本上,我有几个枚举,例如:
enum Enum1{ A, B, C }
enum Enum2{ D, E, F }
我想要一个环绕valueOf 的方法。我找不到直接在参数中传递枚举类的方法,我可以在该参数上调用valueOf。这是我想出的:
private static Enum getEnum(Class<Enum> E, String name){
for(Enum e: E.getEnumConstants())
if(e.name().equals(name)){
return e;
}
return null;
}
我想打电话给:getEnum(Enum1,"A")。但它不喜欢它:
java: cannot find symbol
symbol: variable Enum1
location: class Main
【问题讨论】:
-
难道没有一种方法-
Enum.valueOf(Enum1.class, value);?