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


Модуль Collections.Map (F#)

Операторы функционального программирования, связанные с типом Map.

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

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

module Map

Значения

Значение

Описание

add : 'Key -> 'T -> Map<'Key,'T> -> Map<'Key,'T>

Возвращает новое сопоставление с привязкой, добавленной в заданное сопоставление.

containsKey : 'Key -> Map<'Key,'T> -> bool

Проверяет, входит ли элемент в домен сопоставления.

empty : Map<'Key,'T>

Пустое сопоставление.

exists : ('Key -> 'T -> bool) -> Map<'Key,'T> -> bool

Возвращает значение true, если заданный предикат возвращает значение true для одной из привязок в сопоставлении.

filter : ('Key -> 'T -> bool) -> Map<'Key,'T> -> Map<'Key,'T>

Создает новое сопоставление, содержащее только те привязки, для которых заданный предикат возвращает значение true.

find : 'Key -> Map<'Key,'T> -> 'T

Выполняет поиск элемента в сопоставлении.

findKey : ('Key -> 'T -> bool) -> Map<'Key,'T> -> 'Key

Вычисляет функцию для каждого сопоставления в коллекции.Возвращает ключ первого сопоставления, для которого функция возвращает значение true.

fold : ('State -> 'Key -> 'T -> 'State) -> 'State -> Map<'Key,'T> -> 'State

Выполняет свертывание привязок в сопоставлении

foldBack : ('Key -> 'T -> 'State -> 'State) -> Map<'Key,'T> -> 'State -> 'State

Выполняет свертывание привязок в сопоставлении.

forall : ('Key -> 'T -> bool) -> Map<'Key,'T> -> bool

Возвращает значение true, если заданный предикат возвращает значение true для всех привязок в сопоставлении.

isEmpty : Map<'Key,'T> -> bool

Проверяет, имеет ли карта какие-то привязки.

iter : ('Key -> 'T -> unit) -> Map<'Key,'T> -> unit

Применяет заданную функцию к каждой привязке в словаре.

map : ('Key -> 'T -> 'U) -> Map<'Key,'T> -> Map<'Key,'U>

Создает новую коллекцию, элементы которой являются результатом применения заданной функции к каждому элементу коллекции.Ключ, который передается в функцию, указывает ключ преобразуемого элемента.

ofArray : ('Key * 'T) [] -> Map<'Key,'T>

Возвращает новое сопоставление, созданное из заданных привязок.

ofList : 'Key * 'T list -> Map<'Key,'T>

Возвращает новое сопоставление, созданное из заданных привязок.

ofSeq : seq<'Key * 'T> -> Map<'Key,'T>

Возвращает новое сопоставление, созданное из заданных привязок.

раздел : ('Key -> 'T -> bool) -> Map<'Key,'T> -> Map<'Key,'T> * Map<'Key,'T>

Создает два новых сопоставления: первое содержит привязки, для которых заданный предикат возвращает значение true, а другое возвращает оставшиеся привязки.

pick : ('Key -> 'T -> 'U option) -> Map<'Key,'T> -> 'U

Выполняет поиск первого элемента сопоставления, для которого заданная функция возвращает значение Some.

remove : 'Key -> Map<'Key,'T> -> Map<'Key,'T>

Удаляет элемент из домена сопоставления.Если элемент не существует, исключение не создается.

toArray : Map<'Key,'T> -> ('Key * 'T) []

Возвращает массив всех пар "ключ-значение" в сопоставлении.Массив будет упорядочен по ключам сопоставления.

toList : Map<'Key,'T> -> ('Key * 'T) list

Возвращает список всех пар "ключ-значение" в сопоставлении.Список будет упорядочен по ключам сопоставления.

toSeq : Map<'Key,'T> -> seq<'Key * 'T>

Просматривает коллекцию как перечисляемую последовательность пар.Последовательность будет упорядочена по ключам сопоставления.

tryFind : 'Key -> Map<'Key,'T> -> 'T option

Выполняет поиск элемента в сопоставлении, возвращая значение Some, если элемент находится в домене сопоставления, или значение None в противном случае.

tryFindKey : ('Key -> 'T -> bool) -> Map<'Key,'T> -> 'Key option

Возвращает ключ первого сопоставления коллекции, удовлетворяющеий заданному предикату, или значение None, если ни одного такого элемента нет.

tryPick : ('Key -> 'T -> 'U option) -> Map<'Key,'T> -> 'U option

Выполняет поиск первого элемента сопоставления, для которого заданная функция возвращает значение Some.

Пример

В следующем примере кода используются функции в модуле Map для создания гистограммы экземпляров конкретных символов Юникода с использованием Microsoft.FSharp.Collections.Map.

let data = "The quick brown fox jumps over the lazy dog" 
let histogram = 
    data.ToCharArray()
    |> Seq.groupBy (fun c -> c)
    |> Map.ofSeq
    |> Map.map (fun k v -> Seq.length v)
for (KeyValue(c,n)) in histogram do 
    printfn "Number of '%c' characters = %d" c n 
  

Платформы

Windows 8, Windows 7, Windows Server 2012, Windows 2008 Server R2

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

Основной версии библиотеки F#

Поддерживается в: 2.0, 4.0, портативное

См. также

Ссылки

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