我可以阅读哪些好资料,以了解如何在F#中使用Map?
我试图了解如何使用地图。
我尝试过:
let holidays =
Map.empty.
Add("Christmas", "Dec. 25");;
先奏效,然后我尝试:
let holidays =
Map.empty.
Add("Christmas", "Dec. 25")
Add("Halloween", "Oct. 31");;
它给出了一个错误
我必须在第一个Add语句之后加上一个点:
let holidays =
Map.empty.
Add("Christmas", "Dec. 25").
Add("Halloween", "Oct. 31");;
我想知道为什么会这样。
那么那就意味着
let holidays =
Map.empty;;
是我们创建新地图的方式。但是我想要一个Map类型的地图(团队,积分)。 所以我尝试了:
let exmaple =
Map.empty.
Add ("Superman", Points 8);;
val exmaple : Map<string,Points> = map [("Superman", Points 8)]
但这是map(字符串,点)类型,而不是map(Team,点)类型。
此外,如何在stackoverflow上的map之后写“ <”,以便出现跟随“ <”的东西(这就是为什么我使用map()而不是map <>的原因)?
请帮助。
答案 0 :(得分:4)
创建空Map<Team,Points>
的三种方法是:
let holidays : Map<Team, Points> = Map.empty
let holidays' = Map.empty : Map<Team, Points> // this also works
let holidays'' = Map.empty // even this works if followed by usage
您可以使用.Add(t, p)
或Map.add t p
添加元素:
let twoAdded = holidays .Add("Superman", Points 6) .Add("Batman", Points 5)
let twoAdded' = holidays |> Map.add "Superman" (Points 6) |> Map.add "Batman" (Points 5)
第二种方法是功能方法。
您的类型Team
和string
是相同的,因为:
type Team = string
只是别名,不是新类型。