【发布时间】:2016-10-26 04:56:42
【问题描述】:
我想用下面的代码从 clojure 上的地图中添加值:
(letfn [(r [l a]
(if (empty? l)
a
(if (map? l)
(r (first(vals l)) (+ a (first (vals l))))
(r (rest l) (+ a (first l))))))]
(r {:a 1 :b 2 :c 3} 0)
但我收到以下错误:
IllegalArgumentException 不知道如何从:java.lang.Long clojure.lang.RT.seqFrom (RT.java:542) 创建 ISeq
【问题讨论】:
-
你能用一个例子说明你想做什么吗?此外,
(first(vals l))部分在“first”之后缺少一个空格。
标签: dictionary clojure hashmap