Sobes.tech
Junior

Каква е разликата между Supplier и Consumer в Java?

sobes.tech AI

Отговор от 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); // Приемане на стойност и изпълнение на действие