DoubleStream peek() en Java con ejemplos

DoubleStream peek() es un método en java.util.stream.DoubleStream . La función devuelve una secuencia que consta de los elementos de esta secuencia y, además, realiza la acción proporcionada en cada elemento a medida que se consumen elementos de la secuencia resultante.

DoubleStream peek() es una operación intermedia . Estas operaciones son siempre perezosas. Las operaciones intermedias se invocan en una instancia de Stream y, una vez que finalizan su procesamiento, dan una instancia de Stream como salida.

Sintaxis:

DoubleStream peek(DoubleConsumer action) 

Parámetros:

  1. DoubleStream: una secuencia de elementos primitivos de doble valor.
  2. DoubleConsumer: representa una operación que acepta un solo argumento de doble valor y no devuelve ningún resultado.

Valor devuelto: la función devuelve un DoubleStream paralelo.

Nota: este método existe principalmente para admitir la depuración.

Ejemplo 1: Realización de la operación de suma para encontrar la suma de elementos de DoubleStream dado.

// Java code for DoubleStream peek()
// where the action performed is to get
// sum of all elements.
import java.util.*;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Creating a stream of doubles
        DoubleStream stream =
                DoubleStream.of(2.2, 3.3, 4.5, 6.7);
  
        // performing action sum on elements of
        // given range and storing the result in sum
        double sum = stream.peek(System.out::println).sum();
  
        // Displaying the result of action performed
        System.out.println("sum is : " + sum);
    }
}
Producción:

2.2
3.3
4.5
6.7
sum is : 16.7

Ejemplo 2: realizar una operación de conteo en elementos de DoubleStream dado.

// Java code for DoubleStream peek()
// where the action performed is to get
// count of all elements in given range
import java.util.*;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Creating a stream of doubles
        DoubleStream stream =
                  DoubleStream.of(2.2, 3.3, 4.5, 6.7);
  
        // performing count operation on elements of
        // given DoubleStream and storing the result in Count
        long Count = stream.peek(System.out::println).count();
  
        // Displaying the result of action performed
        System.out.println("count : " + Count);
    }
}
Producción:

2.2
3.3
4.5
6.7
count : 4

Ejemplo 3: Realización de una operación promedio en elementos de DoubleStream dado.

// Java code for DoubleStream peek()
// where the action performed is to get
// average of all elements.
import java.util.*;
import java.util.OptionalDouble;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Creating a stream of doubles
        DoubleStream stream =
                DoubleStream.of(2.2, 3.3, 4.5, 6.7);
        ;
  
        // performing action "average" on elements of
        // given DoubleStream and storing the result in avg
        OptionalDouble avg = stream.peek(System.out::println)
                                 .average();
  
        // If a value is present, isPresent()
        // will return true, else -1 is displayed.
        if (avg.isPresent()) {
            System.out.println("Average is : " + avg.getAsDouble());
        }
        else {
            System.out.println("-1");
        }
    }
}
Producción:

2.2
3.3
4.5
6.7
Average is : 4.175

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 *