Назад к вопросам
Junior
78
questionbank

В чем отличие между Supplier и Consumer в Java?

Sobes Copilot

Получайте ответы в реальном времени

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

sobes.tech AI

Supplier предоставляет значение, не принимая аргументов. Его функциональный метод имеет сигнатуру T get().

Consumer принимает значение, но ничего не возвращает. Его функциональный метод имеет сигнатуру void accept(T t).

Пример:

// Supplier предоставляет случайное число
Supplier<Double> randomSupplier = () -> Math.random();
double randomValue = randomSupplier.get(); // Получаем значение

// Consumer выводит число на консоль
Consumer<Double> printConsumer = number -> System.out.println(number);
printConsumer.accept(randomValue); // Принимаем значение и выполняем действие