В чем разница между Collectors.toConcurrentMap и преобразованием карты в ConcurrentHashMap с помощью опции поставщика Collectors.toMap?
Я хочу преобразоватьMap
вConcurrentHashMap
через Java 8Stream
а такжеCollector
интерфейс, и есть два варианта, которые я могу использовать.
Первый:
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));
Какой из них лучше? Когда я должен использовать каждый вариант?