Sobes.tech
Senior

Mit csinál a reduce metódus?

sobes.tech MI

Válasz az MI-től

A reduce módszer Java-ban sorban feldolgozza egy stream elemeit, és az eredményt összegzi. Két paramétert fogad:

  • egy akkumulator (egy bifunkció), amely összekapcsolja az aktuális összegzett eredményt a következő elemmel;
  • (opcionálisan) egy kezdőérték az akkumulator számára.

Végül a reduce egyetlen értékre csökkenti az elemeket, például összeadásra, szorzásra vagy összefűzésre.

Példa számok összegzésére reduce-val:

import java.util.Arrays;
import java.util.List;

public class ReduceExample {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
        int sum = numbers.stream()
                         .reduce(0, (acc, x) -> acc + x);
        System.out.println("Összeg: " + sum); // Kiírja: Összeg: 15
    }
}

Ha nem adunk meg kezdőértéket, a reduce egy Optional<T>-t ad vissza, mivel a stream üres lehet.