Sobes.tech
Junior
203

Javaда Supplier жана Consumer ортосундагы айырма эмнеде?

AIден жооп

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); // Маанини кабыл алып, аракет кылат