Возможно ли создать метод или класс generic для получения значения перечисления из заданного уникального свойства (поле с методом геттера)?Получить значение перечисления с использованием уникального свойства
Таким образом, вы бы:
public enum EnumToMap {
E1("key1"),
E2("key2"),
;
private final String key;
private EnumToMap(String key) {
this.key = key;
}
public String getKey() {
return key;
}
}
так требуется та же функциональность, как
public static EnumToMap getByKey(String key)
...
обеспечит. Предпочтительно без отражения и как можно более общее (но в этом случае может быть невозможно создать общее решение без отражения).
Уточнение: поэтому этот метод должен работать для нескольких перечислений. Идея заключается не в том, чтобы повторять поиск снова и снова.
Не можете ли вы сделать это с помощью 'toString' и' valueOf'? – 5gon12eder
Конечно, вы можете, но только для «E1» и «E2». –
by generic u означает, что вы хотите использовать его с разными перечислениями? – damienix