📜  Java中的 IntStream mapToObj()

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

Java中的 IntStream mapToObj()

IntStream mapToObj()返回一个对象值 Stream ,其中包含应用给定函数的结果。

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

 Stream mapToObj(IntFunction mapper)

参数 :

  1. U :新流的元素类型。
  2. Stream :支持顺序和并行聚合操作的元素序列。
  3. IntFunction :表示一个接受 int 值参数并产生结果的函数。
  4. 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