Seq.choose<'T,'U> – funkce (F#)
Danou funkci platí pro každý prvek seznamu a vrátí seznam tvořen výsledky pro každý prvek, kde vrátí funkce Some s nějakou hodnotu.
Cesta k oboru názvů nebo modul: Microsoft.FSharp.Collections.Seq
Sestavení: FSharp.Core (v FSharp.Core.dll)
// Signature:
Seq.choose : ('T -> 'U option) -> seq<'T> -> seq<'U>
// Usage:
Seq.choose chooser source
Parametry
chooser
Type: 'T -> 'UoptionFunkce převodu položek typu t na možnosti typu U.
source
Typ: SEQ.<'T>Vstupní posloupnosti typu T.
Výjimky
Výjimka |
Podmínka |
---|---|
Vyvolána při vstupní posloupnost je null. |
Vrácená hodnota
Řada výsledků.
Poznámky
Vrácené sekvence může bezpečně předána mezi podprocesy.Však jednotlivé IEnumerator hodnoty generované ze sekvence vrácené neměli přístup souběžně.
Tato funkce se nazývá Choose v kompilovaný sestavení.Pokud přistupujete k funkci jazyka než F# nebo prostřednictvím reflexe, tento název použijte.
Příklad
Následující příklad kódu ukazuje použití Seq.choose lambda výraz, který používá porovnávání vrátit typ možnosti vybrat prvky ze sekvence.
let numbers = seq {1..20}
let evens = Seq.choose(fun x ->
match x with
| x when x%2=0 -> Some(x)
| _ -> None ) numbers
printfn "numbers = %A\n" numbers
printfn "evens = %A" evens
Platformy
Windows 8, Windows 7, Windows Server 2012 Windows Server 2008 R2
Informace o verzi
F# základní verze knihovny
Podporovány: 2.0, 4.0, přenosné