stream中的filter方法详解
时间: 2023-03-22 07:01:06 浏览: 972
Filter的使用详解
stream中的filter方法是Java 8中引入的Stream API中的一个方法,它用于过滤流中的元素。具体来说,它接受一个Predicate参数,该参数是一个函数式接口,用于判断流中的元素是否应该被保留。当流中的元素满足Predicate条件时,它们将被保留在流中;否则,它们将被过滤掉。
例如,假设有一个包含整数的流,我们可以使用filter方法来仅保留其中的偶数:
```
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);
List<Integer> evenNumbers = numbers.stream()
.filter(n -> n % 2 == 0)
.collect(Collectors.toList());
```
在上面的例子中,filter方法接受一个lambda表达式`n -> n % 2 == 0`,用于判断流中的元素是否为偶数。在执行完该方法后,只有2、4、6三个元素会被保留在流中,最终我们将它们收集到一个List<Integer>中。
阅读全文