在clojure中的单个向量中串联/合并向量
My map函数为我提供输出:在clojure中的单个向量中串联/合并向量,clojure,Clojure,My map函数为我提供输出: ([[:db/retract 1 :a 23] [:db/retract 1 :b 34]] [[:db/retract 2 :v 45] [:db/retract 2 :o 89]] [[:db/retract 4 :l 6]]) 但我想要这样的: ([[:db/retract 1 :a 23] [:db/retract 1 :b 34] [:db/retract 2 :v 45] [:db/retract 2 :o 89][:db/retract 4 :l
([[:db/retract 1 :a 23] [:db/retract 1 :b 34]] [[:db/retract 2 :v 45] [:db/retract 2 :o 89]] [[:db/retract 4 :l 6]])
但我想要这样的:
([[:db/retract 1 :a 23] [:db/retract 1 :b 34] [:db/retract 2 :v 45] [:db/retract 2 :o 89][:db/retract 4 :l 6]])
我们应该如何将向量合并到单个向量中 给定
(def v '([[:db/retract 1 :a 23] [:db/retract 1 :b 34]] [[:db/retract 2 :v 45] [:db/retract 2 :o 89]] [[:db/retract 4 :l 6]]))
你可以用
(apply concat v)
得到
([:db/retract 1 :a 23] [:db/retract 1 :b 34] [:db/retract 2 :v 45] [:db/retract 2 :o 89] [:db/retract 4 :l 6])
([[:db/retract 1 :a 23] [:db/retract 1 :b 34] [:db/retract 2 :v 45] [:db/retract 2 :o 89] [:db/retract 4 :l 6]])
如果确实需要列表中的内部向量,请使用
`(~(vec (apply concat v)))
得到
([:db/retract 1 :a 23] [:db/retract 1 :b 34] [:db/retract 2 :v 45] [:db/retract 2 :o 89] [:db/retract 4 :l 6])
([[:db/retract 1 :a 23] [:db/retract 1 :b 34] [:db/retract 2 :v 45] [:db/retract 2 :o 89] [:db/retract 4 :l 6]])