📜  Java中的DoubleStream mapToLong()

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

Java中的DoubleStream mapToLong()

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

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

LongStream mapToLong(DoubleToLongFunction mapper)

参数 :

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

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

示例 1:

// Java code for LongStream mapToLong
// (DoubleToLongFunction 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 a DoubleStream
        DoubleStream stream = DoubleStream.of(3.3, 6.5, 16.4,
                                              8.7, 10.4);
  
        // Using LongStream mapToLong(DoubleToLongFunction mapper)
        // to return a LongStream consisting of the
        // results of applying the given function to
        // the elements of this stream.
        LongStream stream1 = stream.mapToLong(num -> (long)num);
  
        // Displaying the elements in stream1
        stream1.forEach(System.out::println);
    }
}

输出 :

3
6
16
8
10

示例 2:

// Java code for LongStream mapToLong
// (DoubleToLongFunction 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 a DoubleStream
        DoubleStream stream = DoubleStream.of(3.3, 6.5, 16.4,
                                              8.7, 10.4);
  
        // Using LongStream mapToLong(DoubleToLongFunction mapper)
        // to return a LongStream consisting of the
        // results of applying the given function to
        // the elements of this stream.
        LongStream stream1 = stream.mapToLong(num -> (long)num - 10);
  
        // Displaying the elements in stream1
        stream1.forEach(System.out::println);
    }
}

输出 :

-7
-4
6
-2
0

示例 3:

// Java code for LongStream mapToLong
// (DoubleToLongFunction 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 a DoubleStream
        DoubleStream stream = DoubleStream.of(3.3, 6.5, 16.4,
                                              8.7, 10.4);
  
        // Using LongStream mapToLong(DoubleToLongFunction mapper)
        // to return a LongStream consisting of the
        // results of applying the given function to
        // the elements of this stream.
        LongStream stream1 = stream.mapToLong(num -> (long)(2 * num * num));
  
        // Displaying the elements in stream1
        stream1.forEach(System.out::println);
    }
}

输出 :

21
84
537
151
216