Qual é o processo para filtrar uma lista em Java

Qual E O Processo Para Filtrar Uma Lista Em Java



Filtrando uma lista ” em Java é útil para desenvolvedores que trabalham principalmente com dados. Entra em vigor ao atualizar as funcionalidades do código, excluir os registros ou utilizar os dados contidos em uma lista separada. Nesses cenários, a abordagem de filtragem de lista é útil para gerenciar o tempo e a memória de maneira eficaz no final dos desenvolvedores.

Este blog orientará a filtrar uma lista Java.







Qual é o processo para filtrar uma lista Java?

Uma lista em Java pode ser filtrada usando as seguintes abordagens:



Importe o pacote abaixo em todos os exemplos deste blog para acessar todas as funcionalidades dentro do “ java.util ' pacote:



importar java.util.* ;

Abordagem 1: filtrar uma lista em Java usando o loop “for”

Esta abordagem aplica o “ para ” loop na “Lista” criada de modo que um novo “ ArrayList ” é anexado ao(s) item(ns) filtrado(s).





Exemplo

Visão geral das linhas de código abaixo indicadas:

público aula lista de filtros {
público estático vazio principal ( Corda [ ] argumentos ) {
Lista < Corda > listadada = Matrizes . asList ( 'Caneta' , 'Apagador' , 'Apontador' ) ;
Sistema . fora . println ( 'Lista dada ->' + listadada ) ;
Lista < Corda > listaFiltro = novo ArrayList <> ( ) ;
para ( Corda item : listadada ) {
se ( item. começa com ( 'E' ) ) {
listFilter. adicionar ( item ) ;
} }
Sistema . fora . println ( 'Lista filtrada ->' + listaFiltro ) ;
} }

De acordo com este bloco de código:



  • Crie uma lista de “ Corda ” tipos de dados com os valores de string declarados e exibi-los.
  • Depois disso, crie um novo “ ArrayList 'chamado' listaFiltro ” para anexá-lo com os itens filtrados da lista anterior.
  • Agora, aplique o “ para ” loop para iterar ao longo da primeira lista definida e filtrá-la com base na condição aplicada, ou seja, item(ns) começando com o caractere “ E ”.
  • Após a condição satisfeita, a lista filtrada é anexada à string específica.

Saída

Como visto, a lista filtrada é anexada com a string que atende à condição aplicada.

Abordagem 2: filtrar uma lista em Java usando o loop “while”

Nesta abordagem, o “ enquanto ” loop pode ser implementado junto com o “ Iterador ” e seus métodos para filtrar a lista fornecida. Esses métodos incluem o “ temPróximo()” e “próximo() ” métodos que invocam o próximo valor da lista, se houver algum.

Sintaxe

boleano temPróximo ( )

Este método retorna um resultado booleano, ou seja, 'verdadeiro ou falso' .

público um próximo ( )

Aqui, ' A ” corresponde a “ interface do iterador ”.

Exemplo

Agora, prossiga para o seguinte código:

público aula lista de filtros {
público estático vazio principal ( Corda [ ] argumentos ) {
Lista < Corda > listadada = novo ArrayList <> (
Matrizes . asList ( 'Java' , 'Programação' , 'em' , 'Linux' ) ) ;
Sistema . fora . println ( 'Lista dada ->' + listadada ) ;
Iterador < Corda > iteração = dadaLista. iterador ( ) ;
enquanto ( iteração. temPróximo ( ) ) {
Corda atual = iteração. próximo ( ) ;
se ( atual começa com ( 'P' ) ) {
iteração. remover ( ) ;
} }
Sistema . fora . println ( 'Lista filtrada ->' + listadada ) ;
} }

De acordo com o código acima:

  • Criar um ' ArrayList ' do ' Corda ” digite com os valores fornecidos e exiba-o.
  • Agora, percorra os elementos da lista por meio do “ Iterador ' aula.
  • Além disso, aplique o “ enquanto ” loop para verificar se há um próximo elemento na lista por meio do “ hasNext() ” método e recupere-o com base no método “ próximo() ” método.
  • Agora, verifique se o elemento iterado na lista atendeu à condição declarada, conforme discutido no exemplo anterior.
  • Após a condição satisfeita, esse elemento específico é removido e a lista é filtrada.

Saída

Conforme analisado, o elemento que atende à condição especificada é removido da lista de forma adequada.

Inclua o pacote adicional fornecido abaixo na próxima abordagem para permitir o trabalho com o “ Colecionadores ' aula:

importar java.util.stream.Collectors ;

Abordagem 3: filtrar uma lista em Java usando o método “filter()”

O 'filtro()' O método é usado para filtrar elementos de fluxo com base no predicado fornecido. Este método pode ser utilizado para filtrar um fluxo de listas.

Sintaxe

Fluxo < x > filtro ( Predicado super x > antes )

Nesta sintaxe, “ antes ” corresponde a “ Predicado ” que pode usar uma expressão lambda como argumento.

Exemplo

Considere o seguinte código:

público aula Filterlist2 {
público estático vazio principal ( Corda [ ] argumentos ) {
Lista < Corda > listadada = Matrizes . asList ( 'Móvel' , 'Computador portátil' , 'PC' ) ;
Sistema . fora . println ( 'Lista dada ->' + listadada ) ;
Corda listaFiltro = dadaLista. fluxo ( ) . filtro ( item -> item. começa com ( 'M' ) )
. coletar ( Coletores. juntando-se ( ', ' , '[' , ']' ) ) ;
Sistema . fora . println ( 'Lista filtrada ->' + listaFiltro ) ;
} }

Nestas linhas de código:

  • Da mesma forma, crie um “ Lista ” e exibir seus valores.
  • Depois disso, utilize o “ filtro() ” para filtrar os elementos de fluxo na lista com base na condição discutida e especificar as convenções para conter os itens filtrados por meio do método “ Colecionadores ” classe, respectivamente.
  • Por fim, retorne a lista filtrada.

Saída

Neste resultado, pode ser implícito que uma nova lista é anexada com o valor que satisfaz a condição declarada.

Conclusão

Uma lista em Java pode ser filtrada usando o “ for”, o loop “while” ou o loop “filter() ” método. Todas essas abordagens filtram uma lista com base em uma condição especificada diretamente ou por meio da expressão lambda. Este artigo demonstrou as abordagens para filtrar uma lista Java.