В потоках Java 8 доступны следующие операции отображения (stream mapping operations):
- map(Function<T, R> mapper) - преобразует каждый элемент в потоке при помощи заданной функции и возвращает новый поток.
- flatMap(Function<T, Stream<R>> mapper) - преобразует каждый элемент в потоке в другой поток при помощи заданной функции и возвращает новый поток.
- mapToInt(ToIntFunction<T> mapper) - преобразует каждый элемент в потоке в целочисленное значение при помощи заданной функции и возвращает новый поток целых чисел.
- mapToLong(ToLongFunction<T> mapper) - преобразует каждый элемент в потоке в длинное целочисленное значение при помощи заданной функции и возвращает новый поток длинных целых чисел.
- mapToDouble(ToDoubleFunction<T> mapper) - преобразует каждый элемент в потоке в число с плавающей запятой при помощи заданной функции и возвращает новый поток чисел с плавающей запятой.
Операции отображения (mapping) используются для преобразования элементов потока из одного типа в другой или создания новых потоков на основе текущего потока. Метод map() может быть использован для трансформации объектов из одного типа в другой, а метод flatMap() может быть использован для преобразования каждого элемента потока в другой поток и объединения их в один новый поток. Операции mapToInt(), mapToLong() и mapToDouble() используются для преобразования элементов в примитивные числовые типы, такие как целые числа или числа с плавающей запятой.
1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions
Tелеграмм канал: https://t.me/DEBAGanov
Мое резюме: https://github.com/DEBAGanov