Heim >Java >javaLernprogramm >Welche Bedeutung hat die Methode Collectors.filtering() in Java 9?
Die
Collectors-Klasse ist ein wichtiger Teil der StreamAPI. In Java 9 wurde der Klasse Collectors eine neue Methode hinzugefügt: filtering(). Die Methode Collectors.filtering() kann zum Filtern von Elementen im Stream verwendet werden. Es ähnelt der Methode filter() für Streams. Die Methode filter() verarbeitet die Werte vor dem Gruppieren, während die Methode filtering() gut mit der Methode Collectors.groupingBy() zusammenarbeitet, um die Werte zu gruppieren, bevor der Filterschritt erfolgt.
<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>
Das obige ist der detaillierte Inhalt vonWelche Bedeutung hat die Methode Collectors.filtering() in Java 9?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!