Проблема Enum.valueOf () в Java - PullRequest
0 голосов
/ 20 июля 2011

Я пытаюсь получить значение перечисления из String, например:

Level level = Enum.valueOf(Level.class, "WARNING");

Но все, что я получаю, это предупреждения компилятора, такие как:

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)

Я знаю в версиях JDKдо 1.5 это:

Level level = Level.valueOf("WARNING");

будет работать, но я использую JDK 1.6.Может ли кто-нибудь предоставить рабочий пример для такого рода проблем?

Спасибо.

Ответы [ 2 ]

6 голосов
/ 20 июля 2011

java.util.logging.Level просто не является перечислением.Вы действительно имели в виду этот Level класс или другой класс?

Второй опубликованный вами фрагмент также не сработает, но если вы действительно говоря о нормальном Level классе, вы можете использовать:

Level level = Level.parse("WARNING");
0 голосов
/ 20 июля 2011

Level.WARNING, а также Level.INFO и другие уровни входа не являются ENUM.

Они static final переменные в классе Level.java.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...