我有一张地图矢量,如下所示:
[{:count 3} {:count 5} {:count 8}]
如何进行求和:计算值以在Clojure中获得一个值?
答案 0 :(得分:6)
(def v [{:count 3} {:count 5} {:count 8}])
(reduce #(+ %1 (:count %2)) 0 v);; => 16
或者
(apply + (map :count v));; => 16
你需要学习如何组合函数,然后天空是极限。
答案 1 :(得分:1)
想出来:
(reduce #(+ %1 (%2 :count)) 0 [{:count 3} {:count 5} {:count 8}])
答案 2 :(得分:1)
还有一个:
(transduce (map :count) + 0 [{:count 2} {:count 12}])