English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Il metodo removeIf() di ArrayList Java elimina tutti gli elementi che soddisfano le condizioni specificate dall'ArrayList.
La sintassi del metodo removeIf() è:
arraylist.removeIf(Predicate<E> filter)
filter - Decidere se eliminare l'elemento
Attenzione: Elimina l'elemento se il filter restituisce true.
Se viene eliminato un elemento dall'arraylist, restituisce true.
import java.util.ArrayList; class Main { public static void main(String[] args) { //Creare ArrayList ArrayList<Integer> numbers = new ArrayList<>(); //Aggiungere elementi all'ArrayList numbers.add(1); numbers.add(2); numbers.add(3); numbers.add(4); numbers.add(5); numbers.add(6); System.out.println("Numeri: " + numbers); //Eliminare tutti i numeri pari numbers.removeIf(e -> (e % 2) == 0);; System.out.println("Numeri dispari: " + numbers); } }
Risultato di output
Numeri: [1, 2, 3, 4, 5, 6] Numeri dispari: [1, 3, 5]
Nel esempio sopra, abbiamo creato un ArrayList chiamato numbers. Notare questa riga,
numbers.removeIf(e -> (e % 2) == 0);
qui,
e -> (e % 2) == 0) - È un'espressione lambda. Controlla se l'elemento è divisibile per 2. Per ulteriori informazioni, visitareEspressioni Lambda Java.
removeIf() - Elimina l'elemento se e -> (e % 2) == 0 restituisce true.
import java.util.ArrayList; class Main { public static void main(String[] args) { //Creare ArrayList ArrayList<String> countries = new ArrayList<>(); //Aggiungere elementi all'ArrayList countries.add("Islanda"); countries.add("America"); countries.add("Irlanda"); countries.add("Canada"); countries.add("Groenlandia"); System.out.println("Paese: " + countries); //Eliminare tutti i paesi con land countries.removeIf(e -> e.contains("land"));; System.out.println("Paesi che non contengono land: " + countries); } }
Risultato di output
Paesi: [Islanda, America, Irlanda, Canada, Groenlandia] Paesi che non contengono land: [America, Canada]
Nell'esempio sopra, abbiamo utilizzatoJava String contains()metodo per verificare se l'elemento contiene"land". Ecco,
e -> e.contains("land") - Se l'elemento contiene "land", restituisce true
removeIf() - Se e-> e.contains("land") restituisce true, elimina l'elemento.