【发布时间】:2017-04-14 18:29:04
【问题描述】:
我想通过 Java 8 的Stream 和Collector 接口将Map 转换为ConcurrentHashMap,我可以使用两个选项。
第一个:
Map<Integer, String> mb = persons.stream()
.collect(Collectors.toMap(
p -> p.age,
p -> p.name,
(name1, name2) -> name1+";"+name2,
ConcurrentHashMap::new));
第二个:
Map<Integer, String> mb1 = persons.stream()
.collect(Collectors.toConcurrentMap(
p -> p.age,
p -> p.name));
哪一个是更好的选择?我应该什么时候使用每个选项?
【问题讨论】:
标签: java java-8 java-stream concurrenthashmap collectors