我有一个这样的地图矢量:
[{:categoryid 1, :categoryname "foo" }
{:categoryid 2, :categoryname "bar" }
{:categoryid 3, :categoryname "baz" }]
Run Code Online (Sandbox Code Playgroud)
并且想生成这样的地图地图,以便按categoryname进行搜索
{"foo" {:categoryid 1, :categoryname "foo" },
"bar" {:categoryid 2, :categoryname "bar" },
"baz" {:categoryid 3, :categoryname "baz" }}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
我有这样的代码.我可以在repl中运行它但不能从命令行运行.我想我是一个懒惰的评估问题.
; items.clj
(def items (ref []))
(defn init-items []
(map
#(dosync
(alter items conj %))
["foo" "bar" "baz" ] ))
(init-items)
(println (first @items))
Run Code Online (Sandbox Code Playgroud)
$ java -jar clojure.jar items.clj
$ nil
Run Code Online (Sandbox Code Playgroud)
问候.
clojure ×2