Collections.list方法可将Enumeration转换为ArrayList,它属于java.util.Collections类,接收Enumeration参数并遍历其元素生成List。适用于Vector或Hashtable等旧API返回的Enumeration,便于使用现代集合操作。需注意传入null会抛出NullPointerException,且遍历后Enumeration不可重复使用。

Collections.list 方法可以将 Enumeration 转换为 List,这是 Java 集合工具类提供的一种便捷方式。它接收一个 Enumeration 类型参数,并返回一个包含 Enumeration 中所有元素的 ArrayList。
方法签名
public static List list(Enumeration e)
该方法属于 java.util.Collections 工具类,适用于任何实现了 Enumeration 接口的对象。调用后会遍历整个 Enumeration,将每个元素添加到新创建的 ArrayList 中,然后返回这个列表。
使用场景
Enumeration 常见于一些较老的 API 中,比如 Vector.elements() 或 Hashtable.elements()。当你需要将其转换为现代集合框架中的 List 以便使用增强 for 循环、Stream 或其他集合操作时,Collections.list 就非常有用。
例如:
立即学习“Java免费学习笔记(深入)”;
Vector vector = new Vector();vector.add("apple");vector.add("banana");vector.add("cherry");Enumeration enumeration = vector.elements();List list = Collections.list(enumeration);System.out.println(list); // 输出: [apple, banana, cherry]
注意事项
转换过程中会完整遍历 Enumeration,因此确保在调用前没有提前消费过该枚举(即已经调用过 hasMoreElements() 和 nextElement() 到中间状态),否则会导致部分或全部数据丢失。
返回的是 ArrayList,是可变列表,后续可修改 原始 Enumeration 不受影响,但无法重复使用已遍历的枚举对象获取数据 如果传入 null,会抛出 NullPointerException基本上就这些,不复杂但容易忽略细节。
以上就是Java中Collections.list方法将Enumeration转为List的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/62621.html
微信扫一扫
支付宝扫一扫