Метод 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, если коллекция изменилась в результате вызова