Collections.Map 模块 (F#)

映射 类型相关的函数编程运算符。

命名空间/模块路径: Microsoft.FSharp.Collections

程序集:FSharp.Core(在 FSharp.Core.dll 中)

module Map

说明

添加 : '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>

返回从给定绑定中进行的新映射。

Partition — 分区 : ('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 模板中的函数创建特定的 Unicode 字符事件的直方图,用的是 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 7、Windows Vista SP2、Windows XP SP3、Windows XP x64 SP2、Windows Server 2008 R2、Windows Server 2008 SP2、Windows Server 2003 SP2

版本信息

F# 运行时

受以下版本支持:2.0、4.0

Silverlight

受以下版本支持:3

请参见

参考

Microsoft.FSharp.Collections 命名空间 (F#)