查找Java枚举的最佳实践
- 论坛
- 查找Java枚举的最佳实践
22 浏览
查找Java枚举的最佳实践
我们有一个REST API,客户端可以提供参数,这些参数代表服务器上定义的Java Enums中的值。
为了提供一个描述性的错误,我们为每个枚举类添加了这个lookup
方法。看起来我们只是在复制代码(不好)。有更好的做法吗?
public enum MyEnum { A, B, C, D; public static MyEnum lookup(String id) { try { return MyEnum.valueOf(id); } catch (IllegalArgumentException e) { throw new RuntimeException("无效的值 for my enum blah blah: " + id); } } }
更新:valueOf(..)
提供的默认错误消息将是No enum const class a.b.c.MyEnum.BadValue
。我想在API中提供一个更具描述性的错误消息。