Stream-Filter (Prädikatprädikat) gibt einen Stream zurück, der aus den Elementen dieses Streams besteht, die mit dem angegebenen Prädikat übereinstimmen. Das ist ein Zwischenbetrieb. Diese Operationen sind immer verzögert, d. h. die Ausführung einer Zwischenoperation wie filter() führt eigentlich keine Filterung durch, sondern erstellt stattdessen einen neuen Stream, der beim Durchlaufen die Elemente des ursprünglichen Streams enthält, die mit dem angegebenen Prädikat übereinstimmen.
Syntax:
Stream filter(Predicate predicate)>
Dabei ist Stream eine Schnittstelle und T der Typ der Eingabe für das Prädikat.
Rückgabetyp: Ein neuer Stream.
ein Array von Objekten Java
Implementierung:
- Herausfiltern der Elemente, die durch eine bestimmte Zahl zwischen 0 und 10 teilbar sind.
- Herausfiltern der Elemente mit einem Großbuchstaben an einem bestimmten Index.
- Herausfiltern der Elemente, die mit benutzerdefinierten alphabetischen Buchstaben enden.
Beispiel 1: filter()-Methode mit der Operation, die durch 5 teilbaren Elemente herauszufiltern.
Java
// Java Program to get a Stream Consisting of the Elements> // of Stream that Matches Given Predicate for Stream filter> // (Predicate predicate)> > // Importing required classes> import> java.util.*;> > // Class> class> GFG {> > >// Main driver method> >public> static> void> main(String[] args)> >{> > >// Creating a list of Integers> >List list = Arrays.asList(>3>,>4>,>6>,>12>,>20>);> > >// Getting a stream consisting of the> >// elements that are divisible by 5> >// Using Stream filter(Predicate predicate)> >list.stream()> >.filter(num ->num %>5> ==>0>)> >.forEach(System.out::println);> >}> }> |
Schauspieler Zeenat Aman
>
>Ausgabe
20>
Beispiel 2: filter()-Methode mit der Operation, die Elemente mit einem Großbuchstaben am Index 1 herauszufiltern.
Java
// Java Program to Get Stream Consisting of Elements> // of Stream that Matches Given Predicate> // for Stream Filter (Predicate predicate)> > // Importing required classes> import> java.util.stream.Stream;> > // Class> class> GFG {> > >// Main driver method> >public> static> void> main(String[] args)> >{> >// Creating a stream of strings> >Stream stream = Stream.of(> >'Geeks'>,>'fOr'>,>'GEEKSQUIZ'>,>'techcodeview.com'>);> > >// Getting a stream consisting of the> >// elements having UpperCase Character> >// at custom index say be it '1'> >// using Stream filter(Predicate predicate)> >stream> >.filter(> >str ->Character.isUpperCase(str.charAt(>1>)))> >.forEach(System.out::println);> >}> }> |
>
>Ausgabe
fOr GEEKSQUIZ>
Beispiel 3: filter()-Methode mit der Operation des Herausfilterns der Elemente, die mit einem benutzerdefinierten alphabetischen Buchstaben enden, beispielsweise „s“, für Implementierungszwecke.
iterierende Karte Java
Java
// Java Program to Get a Stream Consisting ofElements> // of Stream that Matches Given predicate> // for Stream filter (Predicate predicate)> > // Importing required classes> import> java.util.stream.Stream;> > // Class> class> GFG {> > >// Main driver method> >public> static> void> main(String[] args)> >{> > >// Creating a stream of strings> >Stream stream = Stream.of(> >'Geeks'>,>'foR'>,>'GeEksQuiz'>,>'techcodeview.com'>);> > >// Getting a stream consisting of the> >// elements ending with 's'> >// using Stream filter(Predicate predicate)> >stream.filter(str ->str.endsWith(>'s'>))> >.forEach(System.out::println);> >}> }> |
>
wie man einen String in ein Zeichen umwandelt
>Ausgabe
Geeks techcodeview.com>