Java中的 IntStream mapToObj()
IntStream mapToObj()返回一个对象值 Stream ,其中包含应用给定函数的结果。
注意: IntStream mapToObj() 是一个中间操作。这些操作总是懒惰的。在 Stream 实例上调用中间操作,在它们完成处理后,它们给出一个 Stream 实例作为输出。
句法 :
Stream mapToObj(IntFunction extends U> mapper)
参数 :
- U :新流的元素类型。
- Stream :支持顺序和并行聚合操作的元素序列。
- IntFunction :表示一个接受 int 值参数并产生结果的函数。
- mapper :应用于每个元素的无状态函数。
返回值:该函数返回一个对象值流,其中包含应用给定函数的结果。
示例 1:
// Java code for IntStream mapToObj
// (IntFunction mapper)
import java.util.*;
import java.util.stream.Stream;
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an IntStream
IntStream stream = IntStream.range(3, 8);
// Creating a Stream of Strings
// Using IntStream mapToObj(IntFunction mapper)
// to store binary representation of
// elements in IntStream
Stream stream1 = stream.mapToObj(num
-> Integer.toBinaryString(num));
// Displaying an object-valued Stream
// consisting of the results of
// applying the given function.
stream1.forEach(System.out::println);
}
}
输出 :
11
100
101
110
111
示例 2:
// Java code for IntStream mapToObj
// (IntFunction mapper)
import java.util.*;
import java.math.BigInteger;
import java.util.stream.Stream;
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an IntStream
IntStream stream = IntStream.of(3, 5, 7, 9, 11);
// Creating a Stream
// Using IntStream mapToObj(IntFunction mapper)
Stream stream1 = stream
.mapToObj(BigInteger::valueOf);
// Displaying an object-valued Stream
// consisting of the results of
// applying the given function.
stream1.forEach(num -> System.out.println(num.add(BigInteger.TEN)));
}
}
输出 :
13
15
17
19
21