java Collectors
时间: 2023-12-15 13:30:44 浏览: 82
Java 8引入了一个新的类Collectors,它提供了很多有用的归约操作,可以将流转换为集合、聚合元素、计算平均值等等。下面是两个Collectors的例子:
1. collectingAndThen()方法:该方法是在归纳动作结束之后,对归纳的结果进行再处理。例如,我们可以使用该方法将流转换为List,然后获取List的大小。
```java
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class CollectorsTest {
public static void collectingAndThenTest(List<String> list){
int length = list.stream().collect(Collectors.collectingAndThen(Collectors.toList(),e -> e.size()));
System.out.println(length);
}
public static void main(String[] args) {
List<String> list = Arrays.asList("123","456","789","1101","212121121","asdaa","3e3e3e","2321eew");
collectingAndThenTest(list);
}
}
```
输出结果为:8,即List的大小。
2. counting()方法:该方法用于计数。例如,我们可以使用该方法计算List中元素的数量。
```java
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class CollectorsTest {
public static void countingTest(List<String> list){
long size = list.stream().collect(Collectors.counting());
System.out.println(size);
}
public static void main(String[] args) {
List<String> list = Arrays.asList("123","456","789","1101","212121121","asdaa","3e3e3e","2321eew");
countingTest(list);
}
}
```
输出结果为:8,即List中元素的数量。
阅读全文