Поделиться через


Функция List.forall2<'T1,'T2> (F#)

Проверяет, все ли соответствующие элементы коллекции удовлетворяют заданному предикату попарно.

Пространство имен/путь к модулю: Microsoft.FSharp.Collections.List

Сборка: FSharp.Core (в FSharp.Core.dll)

// Signature:
List.forall2 : ('T1 -> 'T2 -> bool) -> 'T1 list -> 'T2 list -> bool

// Usage:
List.forall2 predicate list1 list2

Параметры

  • predicate
    Тип: 'T1 -> 'T2 ->bool

    Функция для проверки входных элементов.

  • list1
    Тип: 'T1list

    Первый входной список.

  • list2
    Тип: 'T2list

    Второй входной список.

Исключения

Исключение

Атрибут Condition

ArgumentException

Создается, если входные списки имеют разную длину.

Возвращаемое значение

Значение true, если все пары элементов удовлетворяют предикату.В противном случае возвращает значение false.

Заметки

Предикат применяется к подходящим элементам двух коллекций.Если какое-либо приложение возвращает значение false, для окончательного результата также устанавливается значение false и последующие элементы не проверяются.В противном случае, если одна коллекция длиннее другой, создается исключение ArgumentException.В противном случае возвращается значение true.

В скомпилированных сборках имя этой функции — ForAll2.При обращении к функции из языка платформы .NET Framework, отличного от F#, или посредством отражения следует использовать это имя.

Пример

В следующем примере кода демонстрируется использование функции List.forall2.

let listEqual list1 list2 = List.forall2 (fun elem1 elem2 -> elem1 = elem2) list1 list2
printfn "%b" (listEqual [0; 1; 2] [0; 1; 2])
printfn "%b" (listEqual [0; 0; 0] [0; 1; 0])

Output

  

Платформы

Windows 8, Windows 7, Windows Server 2012, Windows 2008 Server R2

Сведения о версии

Основной версии библиотеки F#

Поддерживается в: 2.0, 4.0, портативное

См. также

Ссылки

Модуль Collections.List (F#)

Пространство имен Microsoft.FSharp.Collections (F#)