stream流转化Object为一个List<Obejct>
时间: 2024-09-12 09:08:05 浏览: 31
Stream流是Java 8中引入的一个新特性,它允许以声明式的方式处理数据集合。通过Stream API,可以方便地实现数据的过滤、转换、聚合等操作。如果你想将一个Stream流中的元素转化为一个List集合,可以使用Stream接口中的`collect`方法。`collect`方法是一个规约操作(将流中的元素累积起来),它接受一个收集器(Collector),用于定义如何收集流中的元素到结果容器中。
以下是如何将Stream中的元素转换为List的一个示例:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Stream;
public class StreamToListExample {
public static void main(String[] args) {
Stream<String> stream = Stream.of("apple", "banana", "cherry");
List<String> list = stream.collect(ArrayList::new, ArrayList::add, ArrayList::addAll);
System.out.println(list);
}
}
```
在上述代码中,`ArrayList::new`是一个方法引用,它指向了ArrayList的构造函数,用于创建新的集合;`ArrayList::add`方法引用指向了ArrayList的add方法,用于向集合中添加单个元素;`ArrayList::addAll`方法引用指向了ArrayList的addAll方法,用于合并两个集合。这种方式适用于将Stream中的元素收集到一个List集合中。
阅读全文