📜  Java中的LongStream mapToDouble()

📅  最后修改于: 2022-05-13 01:55:15.762000             🧑  作者: Mango

Java中的LongStream mapToDouble()

LongStream mapToDouble()返回一个 DoubleStream,其中包含将给定函数应用于此流的元素的结果。

注意: LongStream mapToDouble() 是一个中间操作。这些操作总是懒惰的。在 Stream 实例上调用中间操作,在它们完成处理后,它们给出一个 Stream 实例作为输出。
句法 :

DoubleStream mapToDouble(LongToDoubleFunction mapper)

参数 :

  1. DoubleStream :原始双值元素的序列。这是 Stream 的双重原始特化。
  2. mapper :应用于每个元素的无状态函数。

返回值:该函数返回一个 DoubleStream,其中包含将给定函数应用于此流的元素的结果。

示例 1:

// Java code for DoubleStream mapToDouble
// (LongToDoubleFunction mapper)
import java.util.*;
import java.util.stream.LongStream;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an LongStream
        LongStream stream = LongStream.of(2L, 4L, 6L, 8L, 10L);
  
        // Using DoubleStream mapToLong(LongToDoubleFunction mapper)
        // to return a DoubleStream consisting of the
        // results of applying the given function to
        // the elements of this stream.
        DoubleStream stream1 = stream.mapToDouble(num -> (double)num);
  
        // Displaying the elements in stream1
        stream1.forEach(System.out::println);
    }
}

输出 :

2.0
4.0
6.0
8.0
10.0

示例 2:

// Java code for DoubleStream mapToDouble
// (LongToDoubleFunction mapper)
import java.util.*;
import java.util.stream.LongStream;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an LongStream
        LongStream stream = LongStream.range(5L, 10L);
  
        // Using DoubleStream mapToLong(LongToDoubleFunction mapper)
        // to return a DoubleStream consisting of the
        // results of applying the given function to
        // the elements of this stream.
        DoubleStream stream1 = stream.mapToDouble(num -> (double)num / 5);
  
        // Displaying the elements in stream1
        stream1.forEach(System.out::println);
    }
}

输出 :

1.0
1.2
1.4
1.6
1.8

示例 3:

// Java code for DoubleStream mapToDouble
// (LongToDoubleFunction mapper)
import java.util.*;
import java.util.stream.LongStream;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an LongStream
        LongStream stream = LongStream.range(5L, 10L);
  
        // Using DoubleStream mapToLong(LongToDoubleFunction mapper)
        // to return a DoubleStream consisting of the
        // results of applying the given function to
        // the elements of this stream.
        DoubleStream stream1 = stream.mapToDouble(Math::cos);
  
        // Displaying the elements in stream1
        stream1.forEach(System.out::println);
    }
}

输出 :

0.28366218546322625
0.9601702866503661
0.7539022543433046
-0.14550003380861354
-0.9111302618846769