Найти в Дзене
DEBAGanov

Java 1461. С каким функциональным интерфейсом "работает" метод filter?

Метод filter в Java работает с функциональным интерфейсом Predicate.

Predicate - это функциональный интерфейс, определенный в пакете java.util.function. Он представляет собой функцию, которая принимает один аргумент и возвращает булево значение. Метод filter используется для фильтрации элементов в потоке данных на основе заданного условия, представленного в виде объекта типа Predicate.

Пример использования метода filter с функциональным интерфейсом Predicate:

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

List<Integer> evenNumbers = numbers.stream()
.filter(n -> n % 2 == 0)
.collect(Collectors.toList());

System.out.println(evenNumbers);
// Выводит [2, 4, 6, 8, 10]

В данном примере метод filter используется для фильтрации только четных чисел из списка numbers. Лямбда-выражение n -> n % 2 == 0 является предикатом, который проверяет, является ли число четным. Только числа, для которых предикат возвращает true, проходят через фильтр и сохраняются в новом списке evenNumbers.

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

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

Курс Spring Framework

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

Мое резюмеDEBAGanov

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