地图中的键和值的顺序

时间:2011-08-09 09:38:07

标签: clojure

当我们在地图上调用键时,在我们在同一个地图上调用val时,结果seq中的键的顺序是否保证与值的顺序相同?

换句话说,可以将函数f映射到地图的内容上,如下所示:

(map #(f %1 %2) (keys m) (vals m))

如果没有,在clojure中是否有相当于perl的每个?或者也许是zipmap的反函数?

1 个答案:

答案 0 :(得分:13)

你可以迭代地图,得到关键的val对,


(map (fn [[key val]]
       (println key val)) {:a :b :c :d})

几乎所有的clojure数据结构都是可选的。