Функция 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
Параметры
chooser
Тип: 'T -> 'UoptionФункция для создания параметров из элементов.
list
Тип: 'TlistВходной список.
Возвращаемое значение
Список, состоящий из значений, избранных из функции выбора.
Заметки
В скомпилированных сборках имя этой функции — 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 2008 Server R2
Сведения о версии
Основной версии библиотеки F#
Поддерживается в: 2.0, 4.0, портативное