SEQ.Choose < t, "U > Funkcja (F#)
Dotyczy dana funkcja każdego elementu listy i zwraca listę składają się z wyników dla każdego elementu, gdy funkcja zwraca Some z pewną wartość.
Ścieżka obszaru nazw/modułu: Microsoft.FSharp.Collections.Seq
Zgromadzenie: FSharp.Core (w FSharp.Core.dll)
// Signature:
Seq.choose : ('T -> 'U option) -> seq<'T> -> seq<'U>
// Usage:
Seq.choose chooser source
Parametry
chooser
Type: 'T -> 'UoptionFunkcja przekształcania elementów typu t w opcji Typ U.
source
Typ: seq<'T>Sekwencji wejściowych typu T.
Wyjątki
Wyjątek |
Warunek |
---|---|
Zgłoszony podczas sekwencji wejściowych jest null. |
Wartość zwracana
Sekwencja wynik.
Uwagi
Sekwencja zwracane mogą być przekazywane między wątki bezpiecznie.Jednakże poszczególnych IEnumerator wygenerowany z sekwencji zwracane wartości nie jest dostępna jednocześnie.
Ta funkcja o nazwie Choose w skompilowane zestawy.Jeżeli języka, niż F# lub przez odbicie, uzyskują dostęp do funkcji, należy użyć tej nazwy.
Przykład
Poniższy kod demonstruje użycie Seq.choose wybierz elementy z sekwencji za pomocą wyrażenia lambda używający dopasowania wzorca zwraca typ opcji.
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
Informacje o wersji
F# Core wersji biblioteki
Obsługiwane: 2.0, 4.0, przenośne