Метод Java ArrayList retainAll () зберігає лише ті елементи в списку елементів, які також присутні у зазначеній колекції.
І всі ті елементи, яких немає у зазначеній колекції, видаляються із списку.
Синтаксис retainAll()
методу:
arraylist.retainAll(Collection c);
Тут arraylist є об’єктом ArrayList
класу.
Параметри retainAll ()
retainAll()
Метод приймає один параметр.
- collection - лише ті елементи, які присутні в колекції, зберігаються в списку записів.
retainAll () Повернене значення
- повертає,
true
якщо елементи видалено зі списку списку - викидає,
ClassCastException
якщо клас елементів, присутніх у списку елементів, несумісний з класом елементів у вказаній колекції - викидає,
NullPointerException
якщо список аргументів містить нульовий елемент, а вказана колекція не допускає нульових елементів
Приклад 1: Java ArrayList retainAll ()
import java.util.ArrayList; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList languages1 = new ArrayList(); // insert element to the ArrayList languages1.add("JavaScript"); languages1.add("Python"); languages1.add("Java"); System.out.println("ArrayList 1: " + languages1); // create another ArrayList ArrayList languages2 = new ArrayList(); // add elements to ArrayList languages2.add("English"); languages2.add("Java"); languages2.add("Python"); System.out.println("ArrayList 2: " + languages2); // retain the common element languages1.retainAll(languages2); System.out.println("Common Elements: " + languages1); ) )
Вихідні дані
ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (English, Java, Python) Загальні елементи: (Python, Java)
У наведеному вище прикладі ми створили два списки записів з іменами languages1 та languages2. Зверніть увагу на рядок,
languages1.retainAll(languages2);
Тут ми передаємо мови аргументів2 як аргумент retainAll()
методу. Метод видаляє всі елементи з languages1, яких немає в languages2. Отже, зберігаються лише загальні елементи.
Приклад 2: Показати загальні елементи між ArrayList та HashSet
import java.util.ArrayList; import java.util.HashSet; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList numbers = new ArrayList(); // add element to ArrayList numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("ArrayList: " + numbers); // create a HashSet HashSet 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 the ArrayList numbers.retainAll(primeNumbers); System.out.println("Common Elements: " + numbers); ) )
Вихідні дані
ArrayList: (1, 2, 3) HashSet: (2, 3, 5) Загальні елементи: (2, 3)
У наведеному вище прикладі ми створили список елементів із числами та хеш-набір з іменем primeNumbers. Зверніть увагу на рядок,
numbers.retainAll(primeNumbers);
Тут retainAll()
метод видаляє всі ті елементи з чисел, яких немає у простих числах. І, зберігає лише загальні елементи. Отже, 2 і 3 зберігаються в номерах списку.