Strömfilter (predikatpredikat) returnerar en ström som består av elementen i denna ström som matchar det givna predikatet. Detta är en mellandrift. Dessa operationer är alltid lata, dvs att exekvera en mellanoperation som filter() utför faktiskt ingen filtrering, utan skapar istället en ny ström som, när den passeras, innehåller de element i den initiala strömmen som matchar det givna predikatet.
Syntax:
Stream filter(Predicate predicate)>
Där Stream är ett gränssnitt och T är typen av indata till predikatet.
Returtyp: En ny ström.
Genomförande:
- Filtrera bort de element som är delbara med något specifikt tal som sträcker sig mellan 0 och 10.
- Filtrera bort elementen med en versal vid något specifikt index.
- Filtrera bort elementen som slutar med anpassade alfabetiska bokstäver.
Exempel 1: filter()-metoden med operationen att filtrera bort de element som är delbara med 5.
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);> >}> }> |
>
>Produktion
intern drift av hashmap
20>
Exempel 2: filter() metod med operationen att filtrera bort elementen med en versal vid index 1.
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);> >}> }> |
>
>Produktion
fOr GEEKSQUIZ>
Exempel 3: filter()-metoden med operationen att filtrera bort elementen som slutar med anpassad alfabetisk bokstav säg att det är 's' för implementeringsändamål.
Java
dubbel länkad lista
// 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);> >}> }> |
>
>Produktion
Geeks techcodeview.com>