Propiedades Caracteristicas Stream - Tensho97/Aprende-a-Aprender GitHub Wiki

  • Las operaciones intermedias retornan otro Stream. Esto permite que podamos hacer un encadenamiento de operaciones.

  • Las operaciones intermedias son encoladas hasta que una operación terminal sea invocada. Es muy importante tener esto claro, ninguna de las operaciones intermedias es ejecutada hasta que se invoca una operación terminal.

  • Un Stream puede ser recorrido una sola vez, intentar recorrerlo de nuevo generará una excepción del tipo IllegalStateException.

  • Al usar esta API estamos cambiando el paradigma Iteración externa vs. Iteración interna. En iteración interna, ésta sucede automáticamente permitiendo al desarrollador enfocarse en qué hacer con los datos y no en cómo hacerlo. Por otro lado, permite “esconder” complejidades y permite que la iteración secuencial o paralela sea transparente para el desarrollador.

  • Existen versiones “primitivas” de Stream que evitan el Autoboxing y Unboxing innecesario, mejorando el desempeño de las aplicaciones:

    1. java.util.stream.DoubleStream → Stream cuyos elementos son tipos de dato double.
    2. java.util.stream.IntStream → Stream cuyos elementos son tipos de dato int.
    3. java.util.stream.LongStream → Stream cuyos elementos son tipos de dato long.


Autor: Richard