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

Метод all

Метод all проверяет, возвращает ли предикат true для всех элементов итератора. Он возвращает true, если условие выполнено для каждого элемента, и false, если хотя бы для одного элемента предикат вернул false. Параметром метод принимает замыкание-предикат, которое получает ссылку на очередной элемент и возвращает значение типа bool.

Метод является ленивым и завершает работу досрочно: как только найдётся элемент, для которого предикат вернул false, перебор останавливается и метод сразу возвращает false. Если итератор пуст, метод возвращает true.

Синтаксис

iterator.all(predicate)

Пример

Давайте проверим, все ли элементы вектора [1, 2, 3, 4, 5] являются чётными:

fn main() { let res = vec![1, 2, 3, 4, 5].iter().all(|x| x % 2 == 0); println!("{}", res); }

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

false

Пример

Давайте проверим, все ли элементы вектора [2, 4, 6, 8, 10] являются чётными:

fn main() { let res = vec![2, 4, 6, 8, 10].iter().all(|x| x % 2 == 0); println!("{}", res); }

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

true

Пример

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

fn main() { let res = Vec::<i32>::new().iter().all(|x| x % 2 == 0); println!("{}", res); }

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

true

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

  • метод any,
    который проверяет, удовлетворяет ли условию хотя бы один элемент
  • метод find,
    который возвращает первый элемент, удовлетворяющий условию
  • метод filter,
    который оставляет только элементы, удовлетворяющие условию
  • метод Iterator,
    класс, которому принадлежит метод all
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить