API Stream
API Stream
Las estructuras que soportan esta nueva API se encuentran en el paquete java.util.stream y en especial,
la interface java.util.stream.Stream define un Stream.
La API nos permite realizar operaciones sobre colecciones de datos usando el modelo
filtro/mapeo/reducción, en el cual se seleccionan los datos que se van a procesar (filtro), se convierten a
otro tipo de dato (mapeo) y al final se obtiene el resultado deseado (reducción).
Existen versiones “primitivas” de Stream que evitan el Autoboxing y Unboxing innecesario, mejorando el
desempeño de las aplicaciones:
Java SE 8 introduce una nueva clase utilitaria llamada java.util.stream.Collectors que provee métodos
estáticos que retornan los recolectores más usados. Dichos recolectores pueden ser agrupados en 3
tipos:
Reducción y resúmen: Reducen el Stream y permite obtener valores agregados como cantidad de
elementos, sumas, promedios, etc.
Agrupamiento: Agrupa elementos en un Map usando una “función de clasificación”, que permite
establecer a qué grupo pertenece cada elemento.