如果我有一组像这样的地图
(def a #{
{:a 1 :b 2}
{:a 3 :b 4}
{:b 1 :c 2}
{:d 1 :e 2}
{:d 1 :y 2}
})
:我怎样才能找到所有钥匙?这样做:
(find-all-keys a)
:返回:
(:a :b :c :d :e :y)
答案 0 :(得分:11)
另一种方式:
(distinct (mapcat keys a))
答案 1 :(得分:4)
几乎相同的方式:
(set (mapcat keys a))
答案 2 :(得分:0)
类似的东西:
user=> (into #{} (flatten (map keys a)))
#{:y :a :c :b :d :e}
答案 3 :(得分:0)
另一种方式:
(reduce #(into %1 (keys %2)) #{} a)