Junior — Middle
Poți oferi un exemplu de funcții de reducere utilizate în API-ul Stream pentru procesarea datelor?
sobes.tech AI
Răspuns de la AI
În API-ul Stream, funcțiile de reducere (reductori) sunt utilizate pentru a transforma elementele fluxului într-o singură valoare. Exemple principale:
reduce(BinaryOperator<T> accumulator)— reduce elementele aplicând o operație binară.reduce(T identity, BinaryOperator<T> accumulator)— reducere cu o valoare inițială.
Exemplu: calcularea sumei numerelor dintr-o listă
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
Alt exemplu — concatenarea șirurilor:
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"
Astfel, reductori permit agregarea datelor din flux într-o singură valoare finală.