如何使用 Collectors.toUnmodifiableList() 方法获取一个不可变列表?

2026-05-03 01:530阅读0评论SEO资源
  • 内容介绍
  • 相关推荐

本文共计723个文字,预计阅读时间需要3分钟。

如何使用 Collectors.toUnmodifiableList() 方法获取一个不可变列表?

它返回的确切类型是 `java.util.ImmutableCollections.ListN`(JDK 10+)或类似不可变实现。所谓的不可修改仅指在运行时抛出 `UnsupportedOperationException`,并不阻止反射、序列化反序列化或通过原始引用绕过。例如,如果你用它收集一个已存在的可变 `ArrayList` 的副本,结果看起来是不可变的;但如果元素本身是可变的,集合本身不可增删改,元素状态仍可变。

阅读全文

本文共计723个文字,预计阅读时间需要3分钟。

如何使用 Collectors.toUnmodifiableList() 方法获取一个不可变列表?

它返回的确切类型是 `java.util.ImmutableCollections.ListN`(JDK 10+)或类似不可变实现。所谓的不可修改仅指在运行时抛出 `UnsupportedOperationException`,并不阻止反射、序列化反序列化或通过原始引用绕过。例如,如果你用它收集一个已存在的可变 `ArrayList` 的副本,结果看起来是不可变的;但如果元素本身是可变的,集合本身不可增删改,元素状态仍可变。

阅读全文