516 читали · 2 года назад
Java 548. В чем разница между map() и flatMap()?
Метод map() и метод flatMap() выполняют сходные задачи, но имеют различия в своем поведении. map() принимает на вход функцию, преобразующую каждый элемент исходного потока в некоторое значение другого типа. Затем он выдает новый поток, состоящий из преобразованных значений. Возвращаемое значение функции передается в новый поток как отдельный элемент. flatMap() также принимает на вход функцию, которая преобразует каждый элемент исходного потока, но возвращаемое значение этой функции - это еще один поток...