有序列表或集合中的枚举

Pau*_*aul 3 java groovy enums

我想创建一个有序集或列表,并将枚举添加到集合中,以便它们以枚举顺序插入.
我可以不创建明确的比较器吗?是否有一个集合将使用枚举的固有顺序来维护集合中的顺序?

我希望做什么的Groovy中的示例(我希望Java与for循环而不是闭包相似):

TreeSet<TransactionElement> elements = new TreeSet<TransactionElement>() 
        elementList.each{ element -> elements.add(element)}
Run Code Online (Sandbox Code Playgroud)

TransactionElement是一个枚举,元素应按照它们在枚举中列出的顺序添加到TreeSet中

更新:解决方案我去了:

EnumSet<TransactionElement> elements = EnumSet.noneOf(TransactionElement.class); 
        elementList.each{ element -> elements.add(element)}
Run Code Online (Sandbox Code Playgroud)

如何一些伟大的例子使用EnumSet和EnumMap的位置

Joa*_*uer 7

如果你想要Setenum值,那么EnumSet可能是你最好的选择.使用非专用的不仅更有效Set,而且还保证迭代将按照自然顺序工作enum.