Sobes.tech
Junior — Middle

Можеш ли да наведеш пример функција редукције које се користе у API-ју Stream за обраду података?

sobes.tech АИ

Одговор од АИ

U API Stream, funkcije smanjenja (reduktori) koriste se za smanjenje elemenata toka u jednu vrednost. Glavni primeri:

  • reduce(BinaryOperator<T> accumulator) — smanjuje elemente primenom binarne operacije.
  • reduce(T identity, BinaryOperator<T> accumulator) — smanjenje sa početnom vrednošću.

Primer: računanje sume brojeva u listi

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream()
                 .reduce(0, (a, b) -> a + b);
System.out.println(sum); // 15

Drugi primer — konkatenacija nizova:

List<String> words = Arrays.asList("Java", "Stream", "API");
String result = words.stream()
                     .reduce("", (a, b) -> a + b + " ").trim();
System.out.println(result); // "Java Stream API"

Na ovaj način, reduktori omogućavaju agregaciju podataka iz toka u jednu završnu vrednost.