Pascal4eg / Java

 Java | Фишки и трюки

Метод retainAll()

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("melon");

List<String> list2 = new ArrayList<>();
list2.add("pineapple");
list2.add("orange");
list2.add("apple");

System.out.println(list.retainAll(list2)); // true
System.out.println(list); // [apple, orange]

Метод retainAll() интерфейса Collection, удаляет из коллекции все элементы, не содержащиеся в переданной коллекции. По сути оставляет в коллекции только пересекающиеся элементы из двух коллекций.

boolean retainAll(Collection<?> c);

Параметры:
c – коллекция, содержащая элементы, которые следует сохранить в коллекции.

Возврат:
true, если коллекция изменилась в результате вызова