Java では、java.util.SortedMap<Long,Object>
を使用して、次のようなことができます。
sortedMap.headSet(13).clear()
キーが 13 未満のすべての要素を削除します。clojure の clojure.core に似たものは見当たりません(sorted-map)
(これは常に a だと思いますclojure.lang.PersistentTreeMap
)。私が思いついた最高のものは次のようなものです:
(let [clear-up-to 13
sm (sorted-map 1 "aye" 2 "bee" 13 "em" 14 "en")]
clear-keys (take-while #(< % clear-up-to) (keys sm))
(apply dissoc sm clear-keys))
もっと簡単なものがありませんか?