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


Функция Option.count<'T> (F#)

Вычисляет эквивалент Set.count для параметра.

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

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

// Signature:
count : 'T option -> int

// Usage:
count option

Параметры

  • option
    Тип: 'T option

    Входной параметр.

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

0, если параметр имеет значение None; в противном случае — значение 1.

Заметки

Выражение count inp означает match inp with None -> 0 | Some _ -> 1.

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

Пример

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

let opt1 = Some("test")
let opt2 = None
printfn "%A %A" (Option.count opt1) (Option.count opt2)

// Use Option.count to count the number of Some values in
// an array of options.
let getCount (array1 : int option array) =
    Array.fold (fun state elem -> state + Option.count elem) 0 array1
let testArray1 = [| Some(10); None; Some(1); None; None; Some(56) |]
let testArray2 = [| for i in 1 .. 10 do if i % 2 = 0 then yield Some(i) else yield None |]
printfn "%d" <| getCount testArray1
printfn "%d" <| getCount testArray2

Output

  

Платформы

Windows 7, Windows Vista с пакетом обновления 2 (SP2), Windows XP с пакетом обновления 3 (SP3), Windows XP x64 с пакетом обновления 2 (SP2), Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2), Windows Server 2003 с пакетом обновления 2 (SP2)

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

Среда выполнения F#

Поддерживается в версиях 2.0, 4.0

Silverlight

Поддерживается в версии 3

См. также

Ссылки

Модуль Core.Option (F#)

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

Журнал изменений

Дата

Журнал

Причина

Май 2010

Добавлен пример кода.

Улучшение информации.