Stream-API in Java 8: So verwenden Sie die filter()-Methode zum Filtern von Elementen in einer Sammlung
Einführung:
Java 8 führt die Stream-API ein, die uns eine einfachere und effizientere Möglichkeit bietet, Sammlungen zu verarbeiten. Stream ist eine neue Abstraktionsschicht von Java 8, die es uns ermöglicht, verschiedene Daten auf funktionale Programmierweise zu verarbeiten. In der Stream-API ist die Methode filter() eine der sehr nützlichen Methoden, mit der Elemente in der Sammlung gefiltert werden können. In diesem Artikel werfen wir einen tieferen Blick auf die filter()-Methode und untersuchen ihre Verwendung und Beispiele.
1. Was ist die filter()-Methode? Die filter()-Methode ist eine Zwischenoperationsmethode in der Stream-API. Als Parameter erhält es eine Predicate-Funktionsschnittstelle, die zum Filtern der Elemente in der Sammlung verwendet wird. Die Predicate-Schnittstelle definiert eine test(T t)-Methode, die zur bedingten Beurteilung der angegebenen Parameter und zur Rückgabe eines booleschen Werts verwendet wird. Die filter()-Methode übergibt jedes Element in der Sammlung als Parameter an die test()-Methode von Predicate. Wenn true zurückgegeben wird, wird das Element beibehalten, andernfalls wird es verworfen.
Um die filter()-Methode zu verwenden, müssen Sie zunächst eine Sammlung erstellen und diese dann in einen Stream konvertieren. Rufen Sie dann die Methode filter() auf und verwenden Sie die funktionale Schnittstelle Predicate als Parameter. Die Methode filter() gibt einen neuen Stream zurück, der Elemente enthält, die die Kriterien erfüllen. Verarbeiten Sie diesen neuen Stream abschließend mithilfe der Terminalbetriebsmethode.
import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; public class FilterExample { public static void main(String[] args) { List<Integer> numbers = new ArrayList<>(); numbers.add(1); numbers.add(2); numbers.add(3); numbers.add(4); numbers.add(5); // 使用filter()方法筛选偶数 List<Integer> evenNumbers = numbers.stream() .filter(n -> n % 2 == 0) .collect(Collectors.toList()); System.out.println("偶数列表:" + evenNumbers); } }
Die filter()-Methode hat viele Anwendungsszenarien in der tatsächlichen Entwicklung. Hier sind einige häufige Szenarien:
List<Student> adults = students.stream() .filter(s -> s.getAge() > 18) .collect(Collectors.toList());
List<Integer> range = numbers.stream() .filter(n -> n >= 10 && n <= 20) .collect(Collectors.toList());
List<String> nonEmptyStrings = strings.stream() .filter(s -> s != null && !s.isEmpty()) .collect(Collectors.toList());
filter()-Methode ist eine sehr häufig verwendete Methode in der Stream-API, die uns dabei helfen kann, Elemente in der Sammlung effizient zu filtern. Durch die Verwendung der filter()-Methode können wir Daten auf prägnante und elegante Weise verarbeiten. Ich hoffe, dass dieser Artikel Ihnen hilft, die Verwendung der Methode filter () zu verstehen und flexibel in tatsächlichen Projekten verwendet werden kann.
Das obige ist der detaillierte Inhalt vonStream-API in Java 8: So filtern Sie Elemente in einer Sammlung mit der Methode filter(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!