stream的collect
时间: 2023-08-29 17:12:16 浏览: 66
JAVA8 STREAM COLLECT GROUPBY分组实例解析
collect()是一个中间操作,用于将流中的元素收集到一个集合中。它返回一个Collector类型的对象,可以通过该对象指定集合类型、收集方式等。collect()方法必须与终止操作一起使用,以便将收集的元素输出或处理。
例如,将一个字符串流中的元素收集到一个List集合中:
```java
List<String> stringList = Stream.of("Java", "Python", "C++", "Ruby")
.collect(Collectors.toList());
```
上述代码将创建一个包含四个字符串元素的流,并使用collect()方法将这些元素收集到一个List集合中。最终,stringList集合将包含流中的所有元素。
另一个示例是将一个整数流中的元素收集到一个Set集合中:
```java
Set<Integer> integerSet = IntStream.range(1, 10)
.filter(n -> n % 2 == 0)
.boxed()
.collect(Collectors.toSet());
```
上述代码将创建一个整数流,使用filter()方法筛选出其中的偶数,然后使用boxed()方法将流中的元素转换为包装类(Integer)。最后,使用collect()方法将这些元素收集到一个Set集合中。最终,integerSet集合将包含流中的所有偶数。
阅读全文