Qual é a diferença entre Collectors.toConcurrentMap e converter uma opção de fornecedor Map to ConcurrentHashMap via Collectors.toMap?
Eu quero converter umMap
dentro deConcurrentHashMap
via Java 8Stream
eCollector
interface e existem duas opções que posso usar.
O primeiro:
Map<Integer, String> mb = persons.stream()
.collect(Collectors.toMap(
p -> p.age,
p -> p.name,
(name1, name2) -> name1+";"+name2,
ConcurrentHashMap::new));
E o segundo:
Map<Integer, String> mb1 = persons.stream()
.collect(Collectors.toConcurrentMap(
p -> p.age,
p -> p.name));
Qual é a melhor opção? Quando devo usar cada opção?