DoubleStream flatMap (asignador de doble función) en Java

DoubleStream flatMap(DoubleFunction mapper) devuelve un flujo que consta de los resultados de reemplazar cada elemento de este flujo con el contenido de un flujo mapeado producido al aplicar la función de mapeo proporcionada a cada elemento. Esta 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.

Nota: cada transmisión asignada se cierra después de que su contenido se haya colocado en esta transmisión. Si una secuencia asignada es nula, en su lugar se utiliza una secuencia vacía.

Sintaxis:

DoubleStream flatMap(DoubleFunction<? extends DoubleStream> mapper)

Parámetros:

  1. DoubleStream: una secuencia de elementos primitivos de doble valor.
  2. DoubleFunction: una función que acepta un argumento de doble valor y produce un resultado.
  3. mapeador: una función sin estado que se aplica a cada elemento y la función devuelve la nueva secuencia.

Valor de retorno: DoubleStream flatMap (DoubleFunction mapper) devuelve una secuencia mediante una secuencia asignada utilizando la función de asignación.

Ejemplo 1: Uso de DoubleStream flatMap() para obtener el cubo de elementos de DoubleStream.

// Java code for DoubleStream flatMap
// (DoubleFunction mapper) to get a stream
// consisting of the results of replacing
// each element of this stream with the
// contents of a mapped stream
import java.util.*;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an DoubleStream
        DoubleStream stream1 = DoubleStream.of(4.2, 5.3, 6.6, 7.0);
  
        // Using DoubleStream flatMap()
        DoubleStream stream2 = stream1.flatMap(num
                   -> DoubleStream.of(num * num * num));
  
        // Displaying the resulting DoubleStream
        stream2.forEach(System.out::println);
    }
}
Producción:

74.08800000000001
148.87699999999998
287.496
343.0

Ejemplo 2: Uso de DoubleStream flatMap() para multiplicar cada elemento de DoubleStream por 0,7

// Java code for DoubleStream flatMap
// (DoubleFunction mapper) to get a stream
// consisting of the results of replacing
// each element of this stream with the
// contents of a mapped stream
import java.util.*;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an DoubleStream
        DoubleStream stream1 = DoubleStream.of(5.2, 6.4, 8.1, 10.0);
  
        // Using DoubleStream flatMap()
        DoubleStream stream2 = stream1.flatMap(num
                     -> DoubleStream.of(num * 0.7));
  
        // Displaying the resulting IntStream
        stream2.forEach(System.out::println);
    }
}
Producción:

3.6399999999999997
4.4799999999999995
5.669999999999999
7.0

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 *