Stream filter() i Java med eksempler

Strømfilter (prædikatprædikat) returnerer en strøm, der består af de elementer i denne strøm, der matcher det givne prædikat. Dette er en mellemdrift. Disse operationer er altid dovne, dvs. at udføre en mellemoperation såsom filter() udfører faktisk ikke nogen filtrering, men skaber i stedet en ny strøm, der, når den krydses, indeholder de elementer i den indledende strøm, der matcher det givne prædikat.

Syntaks:

Stream filter(Predicate predicate) 

Hvor Stream er en grænseflade, og T er typen af ​​input til prædikatet.

Returtype: En ny strøm.

Implementering:

  1. Frafiltrering af elementer, der er delelige med et bestemt tal, der går mellem 0 og 10.
  2. Filtrering af elementerne med et stort bogstav ved et bestemt indeks.
  3. Frafiltrering af elementer, der slutter med tilpassede alfabetiske bogstaver.

Eksempel 1: filter() metode med operationen til at bortfiltrere de elementer, der er delelige 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 ->antal %> 5> ==> 0> )> > .forEach(System.out::println);> > }> }>

Produktion

20 

Eksempel 2: filter() metode med operationen til at filtrere elementerne fra med et stort bogstav ved indeks 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 

Eksempel 3: filter()-metoden med operationen til at bortfiltrere de elementer, der ender med tilpasset alfabetisk bogstav, siger, at det er 's' til implementeringsformål.

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);> > }> }>

Produktion

Geeks techcodeview.com