Junior — Middle
¿Puedes dar un ejemplo de funciones reductoras utilizadas en la API Stream para procesar datos?
sobes.tech AI
Respuesta de la IA
En la API de Stream, las funciones de reducción (reductores) se utilizan para transformar los elementos del flujo en un solo valor. Los ejemplos principales:
reduce(BinaryOperator<T> accumulator)— combina los elementos aplicando una operación binaria.reduce(T identity, BinaryOperator<T> accumulator)— reducción con un valor inicial.
Ejemplo: cálculo de la suma de números en una lista
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
Otro ejemplo — concatenación de cadenas:
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"
De esta manera, los reductores permiten agregar datos de un flujo en un solo valor final.