РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
339 of 723 menu

Метод retainAll

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

Синтаксис

set.retainAll(elements)

Пример

Давайте оставим в множестве только те элементы, которые есть в другом множестве:

void main() { Set<String> set1 = {'a', 'b', 'c', 'd', 'e'}; Set<String> set2 = {'b', 'd', 'e'}; set1.retainAll(set2); print(set1); }

Результат выполнения кода:

{b, d, e}

Пример

Давайте передадим в метод список вместо множества и посмотрим на результат:

void main() { Set<int> set = {1, 2, 3, 4, 5}; List<int> list = [1, 3, 5]; set.retainAll(list); print(set); }

Результат выполнения кода:

{1, 3, 5}

Пример

Если в переданной коллекции нет элементов исходного множества, то множество станет пустым:

void main() { Set<String> set = {'a', 'b', 'c'}; set.retainAll({'x', 'y', 'z'}); print(set); }

Результат выполнения кода:

{}

Смотрите также

  • метод removeAll,
    который удаляет все элементы коллекции
  • метод retainWhere,
    который оставляет элементы по условию
  • метод containsAll,
    который проверяет наличие всех элементов
  • метод intersection,
    который возвращает пересечение множеств
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить