Страницы

Поиск по вопросам

суббота, 30 ноября 2019 г.

Что за методы removeAll и retainAll?

#java #коллекции


В гугле наткнулся только на такое описание:   


  removeAll(Collection c) — удаляет элементы, принадлежащие переданной коллекции
  retainAll(Collection c) — удаляет элементы, не принадлежащие переданной коллекции


Что значит "принадлежащие переданной коллекции" и "не принадлежащие переданной коллекции"?
    


Ответы

Ответ 1



Предположим у вас коллекция есть: List listFirst = new ArrayList<>(); listFirst.add("White"); listFirst.add("Black"); listFirst.add("Red"); и вторая: List listSecond = new ArrayList<>(); listSecond.add("Green"); listSecond.add("Red"); listSecond.add("White"); Тогда после listFirst.retainAll(listSecond) в listFirst останется: "White" "Red" Так как удалился "Black", которого нет в listSecond. Но после listFirst.removeAll(listSecond) в listFirst останется: "Black" Удалились все элементы, которые есть в listSecond.

Комментариев нет:

Отправить комментарий