【发布时间】:2013-01-08 02:00:11
【问题描述】:
对于最佳实践,是否最好使用下面的代码和return "red" 来模拟未知值?或者我应该添加一个 unknown("red") 选项并执行 return Shape.unknown.color; 吗?关于未知值的枚举是否有标准的 Java 约定?
private enum Shape {
triangle("yellow"),
square("green"),
circle("red");
private final String color;
Shape(String color) {
this.color = color;
}
};
public String getShapeColor() {
if(shape != null) {
return shape.color;
}
return "red";
}
【问题讨论】:
-
你怎么会有一个未知的值?也就是说,它怎么会到
return "red";这一行呢? -
@DanielKaplan,
shape正在从另一个服务传入,因此它可能为空。并且颜色将用作网页显示的一部分,因此我们希望使用默认值而不是 500'ing -
哦,我明白了,我看错了你的例子。我以为
getShapeColor()在枚举中。
标签: java coding-style enums