Filtr strumieniowy () w Javie z przykładami
Filtr strumienia (predykat predykatu) zwraca strumień składający się z elementów tego strumienia pasujących do podanego predykatu. To jest operacja pośrednia. Operacje te są zawsze leniwe, tj. wykonanie operacji pośredniej, takiej jak filter() w rzeczywistości nie wykonuje żadnego filtrowania, ale zamiast tego tworzy nowy strumień, który po przejściu zawiera elementy strumienia początkowego pasujące do danego predykatu.
Składnia:
Stream filter(Predicate predicate)
Gdzie Stream jest interfejsem, a T jest typem danych wejściowych predykatu.
Typ zwrotu: Nowy strumień.
Realizacja:
- Filtrowanie elementów podzielnych przez określoną liczbę z zakresu od 0 do 10.
- Filtrowanie elementów z dużą literą w dowolnym określonym indeksie.
- Odfiltrowanie elementów kończących się na niestandardowe litery alfabetu.
Przykład 1: filter() z operacją odfiltrowywania elementów podzielnych przez 5.
Jawa
// 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 ->liczba%> 5> ==> 0> )> > .forEach(System.out::println);> > }> }> |
Wyjście
20
Przykład 2: filter() z operacją odfiltrowywania elementów z dużą literą w indeksie 1.
Jawa
// 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);> > }> }> |
Wyjście
fOr GEEKSQUIZ
Przykład 3: filter() z operacją odfiltrowywania elementów kończących się na niestandardową literę alfabetu, powiedzmy, że będzie to „s” dla celów implementacyjnych.
Jawa
// 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);> > }> }> |
Wyjście
Geeks techcodeview.com