Найти тему
DEBAGanov

Java 1488. С каким функциональным интерфейсом мы работаем в методе map()?

В методе map() в Java мы работаем с функциональным интерфейсом Function. Функциональные интерфейсы в Java представляют собой интерфейсы, содержащие только один абстрактный метод. Интерфейс Function определен в пакете java.util.function и имеет следующую сигнатуру:

public interface Function<T, R> {
R apply(T t);
}

В методе map(), который определен в интерфейсе Stream, мы передаем объект типа Function в качестве аргумента. Этот объект определяет, как преобразовать каждый элемент потока в новое значение. Метод map() применяет эту функцию к каждому элементу потока и возвращает новый поток, содержащий результаты преобразования.

Например, предположим, у нас есть поток целых чисел, и мы хотим умножить каждое число на 2. Мы можем использовать метод map() следующим образом:

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> doubledNumbers = numbers.stream()
.map(n -> n * 2)
.collect(Collectors.toList());

В этом примере мы создаем поток из списка чисел, затем с помощью метода map() умножаем каждое число на 2. Результат преобразования сохраняется в новом потоке, который мы затем собираем обратно в список с помощью метода collect().

Таким образом, метод map() позволяет нам преобразовывать элементы потока с помощью функционального интерфейса Function.

3019 вопрос-ответ по Java

Курс Spring Framework

Tелеграмм каналDEBAGanov

Мое резюмеDEBAGanov

Если вам понравилось, буду признателен за подписку.