我试图从String派生一个枚举值,如:
Level level = Enum.valueOf(Level.class, "WARNING");
Run Code Online (Sandbox Code Playgroud)
但我得到的是编译器警告,如:
Test.java:8: <T>valueOf(java.lang.Class<T>,java.lang.String) in java.lang.Enum cannot be applied to (java.lang.Class<java.util.logging.Level>,java.lang.String)
Run Code Online (Sandbox Code Playgroud)
我知道1.5之前的JDK版本:
Level level = Level.valueOf("WARNING");
Run Code Online (Sandbox Code Playgroud)
会工作,但我正在使用JDK 1.6.有人能为这类问题提供一个有效的例子吗?
谢谢.
java.util.logging.Level根本不是一个枚举.你真的是指那个Level班级,还是另一个班级?
您发布的第二个片段也不起作用,但如果您真的在谈论普通Level课程,则可以使用:
Level level = Level.parse("WARNING");
Run Code Online (Sandbox Code Playgroud)