La clase `IntStream` de Java
Introducción
La clase IntStream
de Java es parte del paquete java.util.stream
y se utiliza para trabajar con secuencias de números enteros de manera funcional. Proporciona una forma eficiente y declarativa de realizar operaciones en colecciones de enteros, como filtrado, mapeo y reducción. IntStream
es una subclase de Stream
que se especializa en manejar números enteros, lo que permite evitar el autoboxing y mejorar el rendimiento al trabajar con grandes colecciones de enteros.
Creación de IntStreams
Los IntStreams
se pueden crear a partir de diferentes fuentes, como arreglos, rangos o generadores. Aquí hay algunos ejemplos de cómo crear IntStreams
:
Operaciones intermedias y terminales
Los IntStreams
permiten realizar operaciones intermedias y terminales. Las operaciones intermedias son perezosas y no se ejecutan hasta que se invoca una operación terminal. Las operaciones terminales producen un resultado y finalizan el stream. Aquí hay algunos ejemplos de operaciones intermedias y terminales:
Métodos comunes de IntStream
A continuación se presentan algunos métodos comunes de IntStream
:
Método | Descripción |
---|---|
| Filtra los elementos del stream según un predicado. |
| Aplica una función a cada elemento del stream y devuelve un nuevo stream. |
| Aplica una función que devuelve un stream a cada elemento y aplana el resultado. |
| Elimina elementos duplicados del stream. |
| Ordena los elementos del stream. |
| Limita el número de elementos en el stream. |
| Omite un número específico de elementos en el stream. |
| Realiza una operación de reducción en los elementos del stream. |
| Devuelve la suma de los elementos del stream. |
| Devuelve el promedio de los elementos del stream. |
| Devuelve el valor máximo del stream. |
| Devuelve el valor mínimo del stream. |
| Devuelve el número de elementos en el stream. |
| Realiza una acción para cada elemento del stream. |
| Convierte el stream en un arreglo. |
| Recopila los elementos del stream en una colección. |
| Convierte un |
| Convierte un |
| Convierte un |
| Convierte el stream en una lista. |
| Convierte el stream en un conjunto. |
| Convierte el stream en un mapa. |
| Devuelve una representación en cadena del stream. |
| Realiza una acción para cada elemento del stream sin modificarlo. |
| Verifica si algún elemento del stream cumple con un predicado. |
| Verifica si todos los elementos del stream cumplen con un predicado. |
| Verifica si ningún elemento del stream cumple con un predicado. |
| Devuelve el primer elemento del stream. |
| Devuelve cualquier elemento del stream. |
| Devuelve un iterador para el stream. |
| Cierra el stream y libera los recursos asociados. |
Ejemplo de uso de métodos comunes
En este ejemplo, se crea un IntStream
a partir de un arreglo de enteros. Luego, se filtran los números pares y se multiplican por 2. Finalmente, se convierten los elementos del stream en un List<Integer>
utilizando el método collect
y se imprime el resultado.
Conclusión
La clase IntStream
de Java proporciona una forma eficiente y funcional de trabajar con secuencias de números enteros. Permite realizar operaciones como filtrado, mapeo y reducción de manera declarativa. Con su capacidad para crear streams a partir de diferentes fuentes y su amplia gama de métodos, IntStream
es una herramienta poderosa para procesar colecciones de enteros en Java. Al utilizar IntStream
, se puede mejorar el rendimiento y la legibilidad del código al evitar el autoboxing y trabajar directamente con tipos primitivos.