gpt4 book ai didi

java - java-10 中的 Collectors.toUnmodifiableList

转载 作者:搜寻专家 更新时间:2023-10-30 19:57:03 28 4
gpt4 key购买 nike

如何使用 Collectors.toList/toSet/toMap 创建一个 Unmodifiable List/Set/Map,因为 toList(等等) 文档如下:

There are no guarantees on the type, mutability, serializability, or thread-safety of the List returned

java-10 之前,您必须提供带有 Collectors.collectingAndThenFunction,例如:

 List<Integer> result = Arrays.asList(1, 2, 3, 4)
.stream()
.collect(Collectors.collectingAndThen(
Collectors.toList(),
x -> Collections.unmodifiableList(x)));

最佳答案

在 Java 10 中,这更容易,也更具可读性:

List<Integer> result = Arrays.asList(1, 2, 3, 4)
.stream()
.collect(Collectors.toUnmodifiableList());

在内部,它与 Collectors.collectingAndThen 相同,但返回 Java 9 中添加的不可修改的 List 实例。

关于java - java-10 中的 Collectors.toUnmodifiableList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49106767/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com