1

Clojure 1.1.0を使用しており、のすべての要素を反復処理したいと思いTreeMapます。これどうやってするの?

4

2 に答える 2

4

さらに、map関数とリスト内包表記をforマクロ経由で使用して、java.util.TreeMap:内のすべてのエントリを処理することもできます。

> (def t (new java.util.TreeMap {:a 1 :b 2}))

;; reverse all the pairs
> (map (fn [e] [(val e) (key e)]) t)
([1 :a] [2 :b])

;; same thing, but with destructuring/for
> (for [[k v] t] 
       [v k])
([1 :a] [2 :b])
于 2012-08-10T16:54:51.973 に答える
3

通常のclojureマップと同じようにseq/を使用してそれを行うことができますdoseq

(doseq [entry treeMap] (
    prn (key entry) (val entry))
)

インスタンスはどこにtreeMapありますか。TreeMap

于 2012-08-10T13:39:23.260 に答える