考虑下面的Java枚举:如何将enum的字符串结果与overridden toString()转换回枚举?
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