Учитывая следующий Java перечисление:Как преобразовать строковый результат перечисления с переопределенным toString() обратно в enum?
public enum AgeRange {
A18TO23 {
public String toString() {
return "18 - 23";
}
},
A24TO29 {
public String toString() {
return "24 - 29";
}
},
A30TO35 {
public String toString() {
return "30 - 35";
}
},
}
Есть ли способ, чтобы преобразовать строковое значение «18 - 23» к соответствующему значению перечисления т.е. AgeRange.A18TO23?
Спасибо!
Это гораздо лучший способ справиться с этим. Затем карта создается, когда перечисляется, и работает намного быстрее, чем итерация массива. – 2008-10-27 15:36:49
Я тоже рассматриваю этот метод, но у меня есть только около 15 значений в этом перечислении. Является ли еще более эффективным создание карты? – Walter 2008-10-29 02:43:59
Наверное, нет, честно говоря. Хэш-таблицы отлично подходят для больших объемов данных, но я подозреваю, что сравнение 15 значений (в худшем случае) будет примерно таким же быстрым, как получение хэш-кода, поиск правильного ведра и т. Д. – 2008-10-29 06:24:29