logo

Stream filter() v Javě s příklady

Filtr toku (predikátový predikát) vrací proud skládající se z prvků tohoto proudu, které odpovídají danému predikátu. Tohle je střední provoz. Tyto operace jsou vždy líné, tj. provedení přechodné operace, jako je filter() ve skutečnosti neprovádí žádné filtrování, ale místo toho vytváří nový proud, který při průchodu obsahuje prvky počátečního proudu, které odpovídají danému predikátu.

Syntax:



Stream filter(Predicate predicate)>

Kde Stream je rozhraní a T je typ vstupu do predikátu.

Typ vrácení: Nový stream.

Implementace:



  1. Odfiltrování prvků dělitelných nějakým konkrétním číslem v rozmezí 0 až 10.
  2. Filtrování prvků s velkým písmenem na jakémkoli konkrétním indexu.
  3. Filtrování prvků končících vlastními písmeny abecedy.

Příklad 1: metoda filter() s operací odfiltrování prvků dělitelných 5.

Jáva






// 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 ->číslo %>5> ==>0>)> >.forEach(System.out::println);> >}> }>

náhodný c

>

>

Výstup

20>

Příklad 2: metoda filter() s operací filtrování prvků s velkým písmenem na indexu 1.

Jáva




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

>

>

Výstup

fOr GEEKSQUIZ>

Příklad 3: metoda filter() s operací odfiltrování prvků končících vlastním písmenem abecedy, řekněme, že je to ‚s‘ pro účely implementace.

Jáva


kolik je tam ovoce



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

>

>

Výstup

Geeks techcodeview.com>