Límite de IntStream() en Java

IntStream limit(long maxSize) devuelve una secuencia que consta de los elementos de esta secuencia, truncados para que no superen la longitud de maxSize.

Nota: IntStream limit() es una operación intermedia con estado de cortocircuito , es decir, cuando se procesa con una entrada infinita, puede producir una secuencia finita como resultado sin procesar toda la entrada.

Sintaxis:

IntStream limit(long maxSize)

Parámetros:

  1. IntStream: una secuencia de elementos primitivos de valor int. Esta es la especialización primitiva int de Stream .
  2. maxSize: el número de elementos a los que debe limitarse la transmisión.

Valor devuelto: la función devuelve una secuencia que consta de los elementos de esta secuencia, truncados para que no superen la longitud máxima de tamaño.

Excepción: la función lanza IllegalArgumentException si maxSize es negativo.

Ejemplo 1 :

// Java code for IntStream limit
// (long maxSize)
import java.util.*;
import java.util.stream.IntStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an IntStream
        IntStream stream = IntStream.of(2, 4, 6, 8, 10);
  
        // Using IntStream limit(long maxSize) to
        // get a stream consisting of the elements of
        // this stream, truncated to be no longer
        // than maxSize in length.
        stream.limit(3).forEach(System.out::println);
    }
}

Producción :

2
4
6

Ejemplo 2:

// Java code for IntStream limit
// (long maxSize)
import java.util.*;
import java.util.stream.IntStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an IntStream of numbers [5, 6, .. 11]
        IntStream stream = IntStream.range(5, 12);
  
        // Using IntStream limit(long maxSize) to
        // get a stream consisting of the elements of
        // this stream, truncated to be no longer
        // than maxSize in length.
        stream.limit(4).forEach(System.out::println);
    }
}

Producción :

5
6
7
8

Ejemplo 3:

// Java code for IntStream limit
// (long maxSize)
import java.util.*;
import java.util.stream.IntStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an IntStream
        IntStream stream = IntStream.iterate(4, num -> num + 2);
  
        // Using IntStream limit(long maxSize) to
        // get a stream consisting of the elements of
        // this stream, truncated to be no longer
        // than maxSize in length.
        stream.limit(4).forEach(System.out::println);
    }
}

Producción :

4
6
8
10

Diferencia entre IntStream limit() e IntStream skip() :

  1. El método limit() devuelve un flujo reducido de los primeros elementos maxSize, pero el método skip() devuelve un flujo de elementos restantes después de omitir los primeros elementos maxSize.
  2. limit() es una operación intermedia con estado de cortocircuito, es decir, cuando se procesa con una entrada infinita, puede producir un flujo finito como resultado sin procesar toda la entrada, pero skip() es una operación intermedia con estado, es decir, puede necesitar procesar toda la entrada antes de producir un resultado.

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 *