Java DoubleStream mapToInt()
DoubleStream mapToInt() 返回一个IntStream,该IntStream由对该流的元素应用给定函数的结果组成。
注意: DoubleStream mapToInt()是一个 中间操作。 这些操作总是懒惰的。中间操作是在一个Stream实例上调用的,在它们完成处理后,会给出一个Stream实例作为输出:
语法
IntStream mapToInt(DoubleToIntFunction mapper)
参数
- IntStream : 一个原始int值元素的序列。这是对Stream的int primitive specialization。
- mapper : 一个应用于每个元素的无状态函数。
返回值: 该函数返回一个IntStream,由对该流的元素应用给定函数的结果组成。
例子 1 :
// Java code for IntStream mapToInt
// (DoubleToIntFunction mapper)
import java.util.*;
import java.util.stream.IntStream;
import java.util.stream.DoubleStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating a DoubleStream
DoubleStream stream = DoubleStream.of(2.3, 4.5, 6.4,
8.7, 10.4);
// Using IntStream mapToInt(DoubleToIntFunction mapper)
// to return an IntStream consisting of the
// results of applying the given function to
// the elements of this stream.
IntStream stream1 = stream.mapToInt(num -> (int)num);
// Displaying the elements in stream1
stream1.forEach(System.out::println);
}
}
输出:
2
4
6
8
10
例2 :
// Java code for IntStream mapToInt
// (DoubleToIntFunction mapper)
import java.util.*;
import java.util.stream.IntStream;
import java.util.stream.DoubleStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating a DoubleStream
DoubleStream stream = DoubleStream.of(2.3, 4.5, 6.4,
8.7, 10.4);
// Using IntStream mapToInt(DoubleToIntFunction mapper)
// to return an IntStream consisting of the
// results of applying the given function to
// the elements of this stream.
IntStream stream1 = stream.mapToInt(num -> (int)num - 10000);
// Displaying the elements in stream1
stream1.forEach(System.out::println);
}
}
输出:
-9998
-9996
-9994
-9992
-9990
例3 :
// Java code for IntStream mapToInt
// (DoubleToIntFunction mapper)
import java.util.*;
import java.util.stream.IntStream;
import java.util.stream.DoubleStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating a DoubleStream
DoubleStream stream = DoubleStream.of(1.3, 2.4, 3.4,
4.5, 5.7);
// Using IntStream mapToInt(DoubleToIntFunction mapper)
// to return an IntStream consisting of the
// results of applying the given function to
// the elements of this stream.
IntStream stream1 = stream.mapToInt(num -> (int)(num * num * num));
// Displaying the elements in stream1
stream1.forEach(System.out::println);
}
}
输出:
2
13
39
91
185