Sobes.tech
Junior — Middle

Kun je een voorbeeld geven van reducer-functies die worden gebruikt in de Stream API voor gegevensverwerking?

sobes.tech AI

Antwoord van AI

In de Stream API worden reductiefuncties (reductors) gebruikt om de elementen van een stroom samen te voegen tot één waarde. Belangrijke voorbeelden:

  • reduce(BinaryOperator<T> accumulator) — voegt elementen samen door een binaire operatie toe te passen.
  • reduce(T identity, BinaryOperator<T> accumulator) — reductie met een startwaarde.

Voorbeeld: het berekenen van de som van getallen in een lijst

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

Een ander voorbeeld — concatenatie van strings:

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"

Zo maken reductors het mogelijk om gegevens uit een stroom te aggregeren tot één eindwaarde.