我正在尝试使用默认方法创建一个接口,该方法返回该枚举的 valueOf(string) 或 null 它没有任何,因此我可以轻松实现它,而无需全部粘贴此代码的非通用变体我需要这样的东西的课程。所以我尝试这样做,但它不能编译:
public interface EnumWNull<T extends Enum<T>> {
default T getEnumOrNull(String value){
try {
return Enum.valueOf(T /*Error: expression expected*/, value);
}catch (Exception e){
return null;
}
}
}
我不明白为什么。而且我实际上知道我可以读取所有值并手动搜索它,但是为了学习和优雅,我想知道比这更好的方法(我觉得应该有更好的方法,如果没有的话) t,valueOf 的静态变体的目的是什么?)。
不负相思意
相关分类