Java DoubleStream flatMap(DoubleFunction mapper)

Java DoubleStream flatMap(DoubleFunction mapper)

DoubleStream flatMap(DoubleFunction mapper) 返回一个流,该流由对每个元素应用所提供的 映射函数 而产生的映射流的内容替换该流的每个元素的结果组成。这是一个 中间操作。 这些操作始终是懒惰的。中间操作在一个流实例上被调用,在它们完成处理后,它们给出一个流实例作为输出:

注意: 每个映射的流在其内容被放置到这个流中后被关闭。如果一个映射的流是空的,就会使用一个空的流来代替。

语法:

DoubleStream flatMap(DoubleFunction < **?** extends DoubleStream> mapper)

参数

  1. DoubleStream : 一个原始双值元素的序列。
  2. DoubleFunction : 一个接受双值参数并产生一个结果的函数。
  3. mapper : 一个无状态的函数,它被应用于每个元素,该函数返回新的流。

返回值: DoubleStream flatMap(DoubleFunction mapper)使用映射函数通过映射的流返回一个流。

例子1: 使用DoubleStream flatMap()来获得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

例2: 使用DoubleStream flatMap()将DoubleStream的每个元素乘以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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程