Sobes.tech
Junior — Middle

Kannst du ein Beispiel für Reduktionsfunktionen geben, die in der Stream API zur Datenverarbeitung verwendet werden?

sobes.tech KI

Antwort von AI

In der Stream-API werden Reduktionsfunktionen (Reducer) verwendet, um die Elemente eines Streams zu einem einzelnen Wert zusammenzuführen. Die wichtigsten Beispiele:

  • reduce(BinaryOperator<T> accumulator) — führt die Elemente durch Anwendung einer binären Operation zusammen.
  • reduce(T identity, BinaryOperator<T> accumulator) — Reduktion mit einem Anfangswert.

Beispiel: Berechnung der Summe der Zahlen in einer Liste

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

Ein weiteres Beispiel — Verkettung von 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"

Auf diese Weise ermöglichen Reduktoren die Aggregation von Daten aus einem Stream zu einem einzigen Endwert.