Answers:
您可以使用Collections.list()
一个转换Enumeration
到List
在一个行:
List<T> list = Collections.list(enumeration);
没有类似的方法来获取Set
,但是您仍然可以一行完成:
Set<T> set = new HashSet<T>(Collections.list(enumeration));
怎么样:Collections.list(Enumeration e)返回一个ArrayList<T>
有一个简单的将枚举转换为列表的示例。为此,我使用了 Collections.list(enum)
方法。
public class EnumerationToList {
public static void main(String[] args) {
Vector<String> vt = new Vector<String>();
vt.add("java");
vt.add("php");
vt.add("array");
vt.add("string");
vt.add("c");
Enumeration<String> enm = vt.elements();
List<String> ll = Collections.list(enm);
System.out.println("List elements: " + ll);
}
}
参考:如何将枚举转换为列表
如果你需要Set
,而不是List
,你可以使用EnumSet.allOf() 。
Set<EnumerationClass> set = EnumSet.allOf(EnumerationClass.class);
更新:JakeRobb是正确的。我的答案是关于java.lang.Enum而不是java.util.Enumeration。抱歉,不相关的答案。