如何将记录列表的键值相加?

时间:2012-08-30 17:36:26

标签: clojure

例如:

{defrecord Item [cost value]}
{def items [(Item. 20 50)
            (Item. 30 40)
            (Item. 10 70)]

我如何总结物品的成本? (所以我得60)

1 个答案:

答案 0 :(得分:11)

user=> (defrecord Item [cost value])
user.Item
user=> (def items [(Item. 20 50)
            (Item. 30 40)
            (Item. 10 70)])
#'user/items   
user=> (reduce + (map :cost items))
60