Назад к вопросам
СБЕР
Junior — Middle
89
Использовал ли вы метод collect() для преобразования Stream в HashMap?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Да, метод collect() в Java Stream API часто используется для преобразования потока элементов в коллекции, включая HashMap.
Для преобразования Stream в HashMap можно использовать коллектор Collectors.toMap(). Например:
import java.util.*;
import java.util.stream.*;
public class Example {
public static void main(String[] args) {
List<String> list = Arrays.asList("apple", "banana", "cherry");
Map<String, Integer> map = list.stream()
.collect(Collectors.toMap(
s -> s, // ключ — строка
s -> s.length() // значение — длина строки
));
System.out.println(map); // {apple=5, banana=6, cherry=6}
}
}
Если ключи могут повторяться, нужно использовать версию toMap с функцией объединения значений, чтобы избежать IllegalStateException.