Java 9中Collectors.filtering()方法的重要性是什么?
Collectors类是StreamAPI的重要组成部分。在 Java 9 中,新方法:filtering() 添加到 Collectors 类中。 Collectors.filtering()方法可用于过滤流中的元素。它类似于流上的 filter() 方法。 filter() 方法在分组之前对值进行处理,而 filtering() 方法可以与 Collectors.groupingBy() 很好地配合使用方法在过滤步骤发生之前对值进行分组。
语法
<strong>public static <T, A, R> Collector<T, ?, R> filtering(Predicate<? super T><!--? super T--> predicate, Collector<? super T, A, R><!--? super T,A,R--> downstream)</strong>
示例
import java.util.stream.*; import java.util.*; public class FilteringMethodTest { public static void main(String args[]) { <strong> List<String></strong> list = <strong>List.of</strong>("x", "yy", "zz", "www"); <strong>Map<Integer, List<String>></strong> result = list.stream() .<strong>collect</strong>(<strong>Collectors.groupingBy</strong>(String::length, <strong>Collectors.filtering</strong>(s -> !s.contains("<strong>z</strong>"), <strong>Collectors.toList()</strong>))); System.out.println(result); } }
输出
<strong>{1=[x], 2=[yy], 3=[www]}</strong>
以上就是Java 9中Collectors.filtering()方法的重要性是什么?的详细内容,更多请关注其它相关文章!