English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La méthode retainAll() de Java ArrayList ne conserve que les éléments qui existent à la fois dans ArrayList et dans l'ensemble spécifié.
De plus, tous les éléments qui ne figurent pas dans l'ensemble spécifié sont supprimés de l'arraylist.
La syntaxe de la méthode retainAll() est :
arraylist.retainAll(Collection c);
collection- Seuls les éléments existant dans l'ensemble sont conservés dans l'arraylist.
Si l'élément est supprimé de l'arraylist, retourne true
Si l'élément existant dans l'arraylist est incompatible avec la classe spécifiéeEnsembleSi l'élément existant dans l'arraylist est incompatible avec la classe spécifiée
Si l'arraylist contient des éléments null et que l'élément spécifiéEnsembleNe pas permettre d'éléments null, sinon lève une NullPointerException
import java.util.ArrayList; class Main { public static void main(String[] args) { //Créer ArrayList ArrayList<String> languages1 = new ArrayList<>(); //Ajouter un élément à l'ArrayList languages1.add("JavaScript"); languages1.add("Python"); languages1.add("Java"); System.out.println("ArrayList 1: " + languages1); //Créer une autre ArrayList ArrayList<String> languages2 = new ArrayList<>(); //Ajouter un élément à l'ArrayList languages2.add("English"); languages2.add("Java"); languages2.add("Python"); System.out.println("ArrayList 2: " + languages2); //Garder les éléments communs languages1.retainAll(languages2); System.out.println("Common elements: " + languages1); } }
Output result
ArrayList 1: [JavaScript, Python, Java] ArrayList 2: [English, Java, Python] Éléments communs : [Python, Java]
Dans l'exemple précédent, nous avons créé deux noms de liste languages1et languages2ArrayList. Notez cette ligne,
languages1.retainAll(languages2);
Ici, nous allons arraylist languages2Passés en paramètre à la méthode retainAll() du languages1Supprimer les éléments qui n'apparaissent pas dans languages2Tous les éléments. Par conséquent, ne garder que les éléments communs.
import java.util.ArrayList; import java.util.HashSet; class Main { public static void main(String[] args) { //Créer ArrayList ArrayList<Integer> numbers = new ArrayList<>(); //Ajouter un élément à l'ArrayList numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("ArrayList: " + numbers); //Créer un HashSet HashSet<Integer> primeNumbers = new HashSet<>(); //Add elements to HashSet primeNumbers.add(2); primeNumbers.add(3); primeNumbers.add(5); System.out.println("HashSet: " + primeNumbers); //Retain common elements in ArrayList numbers.retainAll(primeNumbers); System.out.println("Common elements: " + numbers); } }
Output result
ArrayList: [1, 2, 3] HashSet: [2, 3, 5] Common elements: [2, 3]
In the above example, we created an arraylist named numbers and a hash set named primeNumbers. Note this line,
numbers.retainAll(primeNumbers);
In this case, the retainAll() method will delete all those elements that do not exist in primeNumbers and retain only the common elements. Therefore,2and3retained in the arraylist numbers.