我必须为项目编写验收测试。在这个项目中有一个公共最终枚举,其中包含另一个带方法的枚举。我应该在运行时添加新值,但我不知道如何实现此结果。我使用的语言是Java。
你能帮助我吗?
答案 0 :(得分:1)
您无法在java中的Enum中动态创建条目。我建议使用地图做这样的事情,但它不会是一个枚举。
答案 1 :(得分:0)
让你的枚举实现一个接口,声明getter-methods来访问你想要扩展的枚举上的字段。在客户端代码中,将包含枚举的所有方法更改为接口。使用此设计,您可以轻松地为测试添加新值。
答案 2 :(得分:0)
为什么不创建列表(E.G. LinkedList等)并使用枚举的values()方法 获取初始值(枚举的值)到列表中。然后,您可以在运行时将新值添加到列表中,即E.G。:
要迭代枚举的值,只需使用values();假设适当声明公共枚举月{...}:
1. for (Month month : Month.values()) {
2. //do something
3. }
这是一个URL,其中包含使用带枚举的值()的信息:
http://www.coderanch.com/t/410234/java/java/Iteration-Enum