How to filter a persistent map in Clojure?

前端 未结 6 1307
情歌与酒
情歌与酒 2020-12-28 13:10

I have a persistent map which I want to filter. Something like this:

(filter #(-> % val (= 1)) {:a 1 :b 1 :c 2})

The above comes out as

6条回答
  •  暗喜
    暗喜 (楼主)
    2020-12-28 13:34

    Need to traverse all entries, but can leverage Clojures persistent maps:

    (apply dissoc my-map (for [[k v] my-map :when (not= v 1)] k))
    

提交回复
热议问题