Collections.Map 模組 (F#)
與 Map 型別相關的功能程式設計運算子。
**命名空間/模組路徑:**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 值的項目。 |
範例
下列程式碼範例透過 Microsoft.FSharp.Collections.Map,使用 Map 模組中的函式建立特定 Unicode 字元出現次數的長條圖。
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 Server 2008 R2
版本資訊
F# 核心程式庫版本
支援版本:2.0, 4.0,可攜式執行檔 (PE)。