Назад к вопросам
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); // Принимаем значение и выполняем действие