List.choose<'T,'U> 函式 (F#)
將指定的函式 f 套用至清單的每一個項目 x。傳回每個項目之結果組成的清單,其中函式會傳回 Some(f(x))
**命名空間/模組路徑:**Microsoft.FSharp.Collections.List
組件:FSharp.Core (在 FSharp.Core.dll 中)
// Signature:
List.choose : ('T -> 'U option) -> 'T list -> 'U list
// Usage:
List.choose chooser list
參數
傳回值
由從選擇器函式所選取之值組成的清單。
備註
這個函式在已編譯的組件中名為 Choose。如果您是透過 F# 以外的語言,或是透過反映來存取函式,請使用這個名稱。
範例
下列程式碼會示範如何使用 List.choose 選取文字清單中的大寫字。
let listWords = [ "and"; "Rome"; "Bob"; "apple"; "zebra" ]
let isCapitalized (string1:string) = System.Char.IsUpper string1.[0]
let results = List.choose (fun elem ->
match elem with
| elem when isCapitalized elem -> Some(elem + "'s")
| _ -> None) listWords
printfn "%A" results
Output
平台
Windows 8 中, Windows 7, Windows Server 2012 上, Windows Server 2008 R2
版本資訊
F# 核心程式庫版本
支援版本:2.0, 4.0,可攜式執行檔 (PE)。