如何在不明确写下值的情况下创建一个大型嵌套向量



我想创建一个嵌套向量[[1 randint1] [2 randint2] ...>

我尝试过创建多个哈希映射,但是一旦将它们存储在向量中,我也无法将内部地图转换为向量。

(def rands (take 100 (repeatedly #(rand-int 100))))
(println (vec(map #(hash-map %1 %2) (range 100) rands)))

期望[[1 randint1] [2 randint2] ...],但是得到[{1 randint1} {2 randint2} ...]

这是一个产生正确输出的循环变体

(def foo {})
  (loop
    [i 1]    
    (when (< i 100)
      (def foo (conj foo [i (rand-int 100)]))
      (recur (inc i))))

感谢@akond的帮助。这有效:

(vec (for [i (range 100)] [(inc i) (rand-int 100)])))

最新更新