F#在地图中查找集合

时间:2016-10-05 17:09:32

标签: f#

所以我有一个包含相关编号和描述的汽车的数据库。该数据库如下所示:

type Database = Map<CarNo, CarDesc>
type CarNo = int
type CarDesc = Name * Price
type Name = string
type Price = int

如果我想根据数字得到所有汽车的价格总和,我将如何实现该功能?我对如何开始有点困惑。

任何提示都赞赏!

2 个答案:

答案 0 :(得分:4)

我认为像这样的功能会将地图中所有汽车的价格加起来。但是反对问题标题,这里没有涉及的任何内容。

let sumPrices (db:Database) = 
    db |> Map.fold (fun acc _ (_, price) -> acc + float price) 0.0

答案 1 :(得分:1)

db |> Seq.sumBy (fun (KeyValue (_, (_, price))) -> price)