O método Java ArrayList removeIf () remove todos os elementos da arraylist que satisfazem a condição especificada.
A sintaxe do removeIf()
método é:
arraylist.removeIf(Predicate filter)
Aqui, arraylist é um objeto da ArrayList
classe.
removeIf () Parâmetros
O removeIf()
método usa um único parâmetro.
- filtro - decide se um elemento deve ser removido
valor de retorno removeIf ()
- retorna
true
se um elemento for removido da lista de vetores.
Exemplo: remover números pares de ArrayList
import java.util.ArrayList; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList numbers = new ArrayList(); // add elements to the ArrayList numbers.add(1); numbers.add(2); numbers.add(3); numbers.add(4); numbers.add(5); numbers.add(6); System.out.println("Numbers: " + numbers); // remove all even numbers numbers.removeIf(e -> (e % 2) == 0);; System.out.println("Odd Numbers: " + numbers); ) )
Resultado
Números: (1, 2, 3, 4, 5, 6) Números ímpares: (1, 3, 5)
No exemplo acima, criamos uma lista de matrizes denominada números. Observe a linha,
numbers.removeIf(e -> (e % 2) == 0);
Aqui,
e -> (e % 2) == 0)
é uma expressão lambda. Ele verifica se um elemento está dividido por 2. Para saber mais, visite Java Lambda Expression.removeIf()
- Remova o elemento see -> (e % 2) == 0
retornartrue
.
Exemplo 2: Remover países com "terra" no nome
import java.util.ArrayList; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList countries = new ArrayList(); // add elements to the ArrayList countries.add("Iceland"); countries.add("America"); countries.add("Ireland"); countries.add("Canada"); countries.add("Greenland"); System.out.println("Countries: " + countries); // remove all even countries countries.removeIf(e -> e.contains("land"));; System.out.println("Countries without land: " + countries); ) )
Resultado
Países: (Islândia, América, Irlanda, Canadá, Groenlândia) Países sem terra: (América, Canadá)
No exemplo acima, usamos o método Java String contains () para verificar se o elemento contém terreno . Aqui,
e -> e.contains("land")
- retornatrue
se o elemento contiver terreno neleremoveIf()
- remove o elemento see -> e.contains("land")
retornatrue
.