Sobes.tech
Назад к вопросам
Junior — Middle
63

Объясните различия между интерфейсами Supplier и Consumer в контексте передачи данных и их использования.

Ответ от нейросети

sobes.tech AI

В Java интерфейсы Supplier и Consumer относятся к функциональным интерфейсам и используются для разных целей:

  • Supplier<T> — это поставщик данных. Он не принимает входных параметров, но возвращает объект типа T. Используется, когда нужно получить данные без входных аргументов.

  • Consumer<T> — это потребитель данных. Он принимает объект типа T и ничего не возвращает. Используется для обработки или потребления данных.

Пример:

Supplier<String> supplier = () -> "Привет";
Consumer<String> consumer = s -> System.out.println(s);

String value = supplier.get(); // Получаем строку "Привет"
consumer.accept(value); // Выводим строку на консоль

Таким образом, Supplier генерирует или предоставляет данные, а Consumer их принимает и обрабатывает.