【发布时间】:2023-03-15 16:23:01
【问题描述】:
我有一系列这样的地图对(目前大约 17000 对)
(def myseq '({:name "Peter" :rank 2222} {:name "Anna" :rank 111}))
我想用
将特定对过滤成一个新序列(filter (fn [x] (> x 222)) (:rank (first myseq)))
我一直在尝试使用这样的循环进行迭代,但不断遇到线程死亡。此外,如果我在单个地图集合上使用过滤器,它只会返回一个新序列,不确定我是否需要自己在这里创建一个?
(defn remove-lower [number myseq]
(loop [i 0]
(if (= i (count file))
(println "done")
(filter [x] (> x number))
(:rank (first myseq))))
(recur (rest myseq))))
最后是循环获得新的对序列的最有效方法吗?
【问题讨论】:
标签: loops dictionary clojure