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

Метод retainWhere

Метод retainWhere удаляет из множества все элементы, которые не удовлетворяют условию, переданному в параметре. В параметр мы передаем функцию-предикат, которая принимает элемент множества и возвращает true, если элемент нужно оставить, и false, если его следует удалить. Метод изменяет исходное множество и не возвращает результат.

Синтаксис

set.retainWhere(function)

Пример

Давайте оставим в множестве только числа, которые больше 2:

void main() { Set<int> set = {1, 2, 3, 4, 5}; set.retainWhere((int element) { return element > 2; }); print(set); }

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

{3, 4, 5}

Пример

Давайте оставим в множестве только строки, длина которых больше 1:

void main() { Set<String> set = {'a', 'ab', 'abc', 'd', 'de'}; set.retainWhere((String element) { return element.length > 1; }); print(set); }

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

{ab, abc, de}

Пример

Давайте удалим все четные числа из множества:

void main() { Set<int> set = {1, 2, 3, 4, 5}; set.retainWhere((int element) { return element.isOdd; }); print(set); }

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

{1, 3, 5}

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

  • метод removeWhere,
    который удаляет элементы по условию
  • метод retainAll,
    который оставляет только указанные элементы
  • метод remove,
    который удаляет конкретный элемент
  • метод contains,
    который проверяет наличие элемента
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить