IntStream concat() en Java

El método IntStream concat() crea un flujo concatenado en el que los elementos son todos los elementos del primer flujo seguidos de todos los elementos del segundo flujo. El flujo resultante se ordena si ambos flujos de entrada están ordenados y es paralelo si cualquiera de los flujos de entrada es paralelo.

Sintaxis:

static IntStream concat(IntStream a,  IntStream b)

Where, IntStream is a sequence of primitive int-valued elements,
a represents the first stream,
b represents the second stream and
the function returns the concatenation of
the two input IntStreams.

Se puede pensar que las llamadas a IntStream.concat(IntStream a, IntStream b) forman un árbol binario. La concatenación de todos los flujos de entrada está en la raíz. Los flujos de entrada individuales están en las hojas. A continuación se muestra un ejemplo para 3 IntStreams a, b y c.

Cada flujo de entrada adicional agrega una capa de profundidad al árbol y una capa de direccionamiento indirecto para llegar a todos los demás flujos.

Nota: Los elementos devueltos por el método IntStream.concat() están ordenados. Por ejemplo, las siguientes dos líneas devuelven el mismo resultado:

IntStream.concat(IntStream.concat(stream1, stream2), stream3);
IntStream.concat(stream1, IntStream.concat(stream2, stream3));

Pero el resultado para los dos siguientes es diferente.

IntStream.concat(IntStream.concat(stream1, stream2), stream3); 
IntStream.concat(IntStream.concat(stream2, stream1), stream3);

Ejemplo 1 :

// Implementation of IntStream.concat()
// method in Java 8 with 2 IntStreams
import java.util.*;
import java.util.stream.IntStream;
import java.util.stream.Stream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating two IntStreams
        IntStream stream1 = IntStream.of(2, 4, 6);
        IntStream stream2 = IntStream.of(1, 3, 5);
  
        // concatenating both the Streams
        // with IntStream.concat() function
        // and displaying the result
        IntStream.concat(stream1, stream2)
            .forEach(element -> System.out.println(element));
    }
}
Producción:

2
4
6
1
3
5

Ejemplo 2:

// Implementation of IntStream.concat()
// method in Java 8 with 2 IntStreams
import java.util.*;
import java.util.stream.IntStream;
import java.util.stream.Stream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating two IntStreams
        IntStream stream1 = IntStream.of(2, 4, 6);
        IntStream stream2 = IntStream.of(1, 2, 4);
  
        // concatenating both the Streams
        // with IntStream.concat() function
        // and displaying distinct elements
        // in the concatenated IntStream
        IntStream.concat(stream1, stream2).distinct().
        forEach(element -> System.out.println(element));
    }
}
Producción:

2
4
6
1

Publicación traducida automáticamente

Artículo escrito por Sahil_Bansall y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *