从一维创建二维向量

Create 2-dimensional vectors from 1-dimensionals

虽然我的问题似乎与一个相当琐碎的任务有关,但我还没有能够成功地创建一个二维向量

[[1 2] [3 4]]

来自两个单独的向量,

(def a [1 2])(def b [3 4]).

撇开函数 conjcons,我 运行 进入了 vecinto-array 都需要单一输入值的问题。 另一种解决方法是预填充二维向量

(vec (replicate 2 (vec (replicate 2 nil))))

但我仍然是一个复杂的选择。

只需使用vector:

(def a [1 2])
(def b [3 4])
(vector a b) => [[1 2] [3 4]]
[a b] => [[1 2] [3 4]]

有几种方法可以解决这个问题:

  1. 正如@MartinPůda所说,使用vector(vector a b) => [[1 2] [3 4]])
  2. 使用conj(conj [] a b) => [[1 2] [3 4]]
  3. 使用向量文字:[a b] => [[1 2] [3 4]]

如果 Clojure 有问题,那就是财富过剩。 :-)