mapToObj方法
时间: 2023-11-12 09:46:35 浏览: 25
mapToObj方法是Java Stream API中的一个方法,它可以将流中的元素映射为对象。该方法接收一个Function接口作为参数,用于将流中的元素映射为对象,并返回一个包含映射结果的Stream对象。这个方法常用于将基本类型流转换为包装类型流或者进行自定义的对象转换操作。
例如,假设有一个存储了字符串长度的整型流,我们可以使用mapToObj方法将其转换为字符串对象流:
```
IntStream lengths = IntStream.of(3, 4, 5);
Stream<String> strings = lengths.mapToObj(i -> "Length: " + i);
```
在上述示例中,mapToObj方法将整型流中的每个元素映射为带有前缀"Length: "的字符串对象,并返回一个包含映射结果的字符串对象流。最终,我们可以通过strings流来操作、处理这些字符串对象。
相关问题
java stream mapToObj
`mapToObj()`是Java Stream API中的一个方法,它用于将一个基本类型流(例如IntStream、LongStream、DoubleStream)转换为一个对象流(Stream<T>)。该方法接受一个`IntFunction<? extends U>`参数,该参数定义了如何将基本类型转换为对象类型。
以下是一个使用`mapToObj()`方法的示例:
```java
import java.util.Arrays;
import java.util.List;
import java.util.stream.IntStream;
import java.util.stream.Stream;
public class Main {
public static void main(String[] args) {
IntStream intStream = Arrays.asList(1, 2, 3, 4, 5, 6).stream().mapToInt(i -> i);
Stream<Integer> objStream = intStream.mapToObj(i -> i);
objStream.forEach(System.out::println);
}
}
```
在上面的示例中,我们首先创建一个IntStream,然后使用`mapToObj()`方法将其转换为一个对象流。最后,我们使用`forEach()`方法打印每个元素。
输出结果将是:
```
1
2
3
4
5
6
```
intstream.mapToObj()
IntStream的mapToObj()方法用于将IntStream中的每个元素映射为一个对象,并返回一个由这些对象组成的新流。这个方法可以用于将基本类型流转换为对象流。
以下是一个示例代码演示了mapToObj()方法的使用:
```java
IntStream intStream = IntStream.range(1, 5);
Stream<String> stringStream = intStream.mapToObj(i -> "Number " + i);
stringStream.forEach(System.out::println);
```
输出结果为:
```
Number 1
Number 2
Number 3
Number 4
```
在这个例子中,我们首先创建了一个IntStream,其中包含了1到4的整数。然后使用mapToObj()方法将每个整数映射为一个字符串,添加前缀"Number "。最后,我们使用forEach()方法打印出每个映射后的字符串。