【发布时间】:2013-11-29 13:32:49
【问题描述】:
我有一个由我使用的网络服务自动生成的枚举,因此我无法修改此枚举类,因为进一步更新会覆盖它。
我想为枚举提供翻译:
//I cannot modify this class
public enum Time {
PAST("Past"), PRESENT("Present"), FUTURE("Future");
private final String value;
}
//my code
Time time = getTimeFromWebservice();
String translation;
switch(time.value()) {
case: "Past": translation = "Vergangenheit"; break;
case: "Present": translation = "Gegenwart"; break;
case: "Future": translation = "Zukunft"; break;
}
我该如何改进?
【问题讨论】:
-
首先,我会打开枚举值本身而不是它们的字符串值:
switch (time) { case PAST: ... case PRESENT: ... } -
哦,是的,这样好多了!
标签: java enums internationalization