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:
- DoubleStream: una secuencia de elementos primitivos de doble valor.
- DoubleFunction: una función que acepta un argumento de doble valor y produce un resultado.
- 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); } }
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); } }
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