Sobes.tech
Назад к вопросам
Junior — Middle
86

Можно ли применить метод stream() к объекту типа Map в Java?

Ответ от нейросети

sobes.tech AI

В Java объект типа Map напрямую не имеет метода stream(), так как Map не является коллекцией, а интерфейсом для отображения ключ-значение. Однако, вы можете получить поток элементов из различных представлений Map:

  • map.entrySet().stream() — поток пар ключ-значение (Map.Entry<K, V>)
  • map.keySet().stream() — поток ключей
  • map.values().stream() — поток значений

Пример:

Map<String, Integer> map = new HashMap<>();
map.put("one", 1);
map.put("two", 2);

map.entrySet().stream()
   .filter(entry -> entry.getValue() > 1)
   .forEach(entry -> System.out.println(entry.getKey()));

Таким образом, метод stream() применяется к коллекциям, возвращаемым методами Map, а не к самому Map.