Основы Java. Урок 131. Streams. Метод flatMap.
Java 548. В чем разница между map() и flatMap()?
Метод map() и метод flatMap() выполняют сходные задачи, но имеют различия в своем поведении. map() принимает на вход функцию, преобразующую каждый элемент исходного потока в некоторое значение другого типа. Затем он выдает новый поток, состоящий из преобразованных значений. Возвращаемое значение функции передается в новый поток как отдельный элемент. flatMap() также принимает на вход функцию, которая преобразует каждый элемент исходного потока, но возвращаемое значение этой функции - это еще один поток...
Java 218. Чем отличается метод map от flatMap?
Метод map и метод flatMap являются функциями высшего порядка в языке программирования, которые используются для манипулирования коллекциями данных. Метод map принимает функцию, которая преобразует каждый элемент коллекции, возвращает новую коллекцию с тем же числом элементов. Например: val numbers = listOf(1, 2, 3)
val squaredNumbers = numbers.map { it * it }
// squaredNumbers == [1, 4, 9] Метод flatMap, с другой стороны, принимает функцию, которая возвращает коллекцию для каждого элемента входной коллекции, а затем объединяет эти коллекции в одну выходную коллекцию...