Filtro de flujo() en Java con ejemplos

Filtro de flujo (predicado predicado) devuelve una secuencia que consta de los elementos de esta secuencia que coinciden con el predicado dado. Esto es un operación intermedia. Estas operaciones siempre son diferidas, es decir, ejecutar una operación intermedia como filter() en realidad no realiza ningún filtrado, sino que crea una nueva secuencia que, cuando se recorre, contiene los elementos de la secuencia inicial que coinciden con el predicado dado.

Sintaxis:

Stream filter(Predicate predicate) 

Donde Stream es una interfaz y T es el tipo de entrada al predicado.

Tipo de devolución: Una nueva corriente.

Implementación:

  1. Filtrar los elementos divisibles por algún número específico que oscila entre 0 y 10.
  2. Filtrar los elementos con una letra mayúscula en cualquier índice específico.
  3. Filtrar los elementos que terminan con letras alfabéticas personalizadas.

Ejemplo 1: Método filter() con la operación de filtrar los elementos divisibles por 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 ->número %> 5> ==> 0> )> > .forEach(System.out::println);> > }> }>

Producción

20 

Ejemplo 2: Método filter() con la operación de filtrar los elementos con una letra mayúscula en el índice 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 ->Carácter.isUpperCase(str.charAt(> 1> )))> > .forEach(System.out::println);> > }> }>

Producción

fOr GEEKSQUIZ 

Ejemplo 3: El método filter() con la operación de filtrar los elementos que terminan con una letra alfabética personalizada dice que sea 's' para fines de implementación.

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

Producción

Geeks techcodeview.com