Predicate — это функциональный интерфейс, который принимает один аргумент и возвращает boolean результат. Его обычно используют для фильтрации или условной логики.
Пример использования: Проверка того, соответствует ли значение определённым критериям
Supplier — это функциональный интерфейс, который не принимает аргументов и возвращает значение. Его используют для генерации или предоставления значений по требованию без необходимости входных данных.
Пример использования: Создание экземпляров или генерация ленивых значений
Consumer — это функциональный интерфейс, который принимает один аргумент и ничего не возвращает (void). Его обычно используют для выполнения действий или побочных эффектов над переданными данными.
Пример использования: Обработка или логирование значений без возврата результата
| Интерфейс | Вход | Выход |
|---|---|---|
| Predicate | 1 аргумент | boolean |
| Supplier | Нет аргументов | Любое значение |
| Consumer | 1 аргумент | void (ничего) |
Все три — это функциональные интерфейсы, которые появились в Java 8 для поддержки паттернов функционального программирования и отлично работают со streams и лямбда-выражениями.
Функциональный интерфейс Supplier не принимает аргументы и возвращает значение любого типа, что делает его идеальным для ленивой инициализации или паттернов Factory.
Новый — ещё не проверен сообществом
Вы