Java中的DoubleStream mapToLong()
DoubleStream mapToLong()返回一个 LongStream,其中包含将给定函数应用于此流的元素的结果。
注意: DoubleStream mapToLong() 是一个中间操作。这些操作总是懒惰的。在 Stream 实例上调用中间操作,在它们完成处理后,它们给出一个 Stream 实例作为输出。
句法 :
LongStream mapToLong(DoubleToLongFunction mapper)
参数 :
- DoubleStream :原始双值元素的序列。这是 Stream 的双重原始特化。
- 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