W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
在F#中,Map是一種特殊類型的集合,將值與鍵相關(guān)聯(lián)。 以與創(chuàng)建集合類似的方式創(chuàng)建Map。
通過使用Map.empty創(chuàng)建空映射并使用Add函數(shù)添加項來創(chuàng)建映射。 下面的例子演示了這一點。
(* Create an empty Map *) let students = Map.empty. (* Creating an empty Map *) Add("Zara Ali", "1501"). Add("Rishita Gupta", "1502"). Add("Robin Sahoo", "1503"). Add("Gillian Megan", "1504");; printfn "Map - students: %A" students (* Convert a list to Map *) let capitals = [ "Argentina", "Buenos Aires"; "France ", "Paris"; "Chili", "Santiago"; "Malaysia", " Kuala Lumpur"; "Switzerland", "Bern" ] |> Map.ofList;; printfn "Map capitals : %A" capitals
當(dāng)你編譯和執(zhí)行程序,它產(chǎn)生以下輸出
Map - students: map [("Gillian Megan", "1504"); ("Rishita Gupta", "1502"); ("Robin Sahoo", "1503 "); ("Zara Ali", "1501")] Map capitals : map [("Argentina", "Buenos Aires"); ("Chili", "Santiago"); ("France ", "Paris"); ("Malaysia", " Kuala Lumpur"); ("Switzerland", "Bern")]
您可以使用key訪問map中的各個元素
(* Create an empty Map *) let students = Map.empty. (* Creating an empty Map *) Add("Zara Ali", "1501"). Add("Rishita Gupta", "1502"). Add("Robin Sahoo", "1503"). Add("Gillian Megan", "1504");; printfn "Map - students: %A" students (*Accessing an element using key *) printfn "%A" students.["Zara Ali"]
當(dāng)你編譯和執(zhí)行程序,它產(chǎn)生以下輸出
Map - students: map [("Gillian Megan", "1504"); ("Rishita Gupta", "1502"); ("Robin Sahoo", "1503 "); ("Zara Ali", "1501")] "1501"
下表是Map上的基本操作 -
函數(shù) | 描述 |
---|---|
Add | 返回與綁定添加到給定的地圖新地圖。 |
ContainsKey | 測試元素是否在地圖中的域。 |
Count | 在地圖上綁定的數(shù)量。 |
IsEmpty | 如果在地圖上沒有綁定,則返回true。 |
Item | 查找地圖中的元素。如果沒有綁定存在于地圖引發(fā)KeyNotFoundException。 |
Remove | 從地圖中刪除域的元素。如果該元素不存在任何異常。 |
TryFind | 在地圖中查找元素,如果元素在地圖的域中,則返回一個值,而不是Noneif。 |
下面的例子演示了上述一些功能的使用
(* Create an empty Map *) let students = Map.empty. (* Creating an empty Map *) Add("Zara Ali", "1501"). Add("Rishita Gupta", "1502"). Add("Robin Sahoo", "1503"). Add("Gillian Megan", "1504"). Add("Shraddha Dubey", "1505"). Add("Novonil Sarker", "1506"). Add("Joan Paul", "1507");; printfn "Map - students: %A" students printfn "Map - number of students: %d" students.Count (* finding the registration number of a student*) let found = students.TryFind "Rishita Gupta" match found with | Some x -> printfn "Found %s." x | None -> printfn "Did not find the specified value."
當(dāng)你編譯和執(zhí)行程序,它產(chǎn)生以下輸出
Map - students: map [("Gillian Megan", "1504"); ("Joan Paul", "1507"); ("Novonil Sarker", "1506" ); ("Rishita Gupta", "1502"); ("Robin Sahoo", "1503"); ("Shraddha Dubey", "1505"); ("Zara Ali", "1501")] Map - number of students: 7 Found 1502.
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: