Clojure - 通过索引在多个向量中添加值

时间:2017-06-16 14:42:09

标签: clojure

我有3个向量[1 2 3] [4 5 6] [7 8 9。我想通过索引添加向量,即返回向量

[(+ 1 4 7) (+ 2 5 8) (+ 3 6 9)] => [12 15 18]

我想如果做这样的事情但我意识到我没有把矢量拿出来

(defn vec-adder [x y z]
  (loop [a 1]
    (when (< a (count x)
      (recur (+ (nth x a) (nth y a) (nth z a)) (+ a 1)))))

非常感谢任何帮助。感谢。

1 个答案:

答案 0 :(得分:8)

(mapv + [1 2 3] [4 5 6] [7 8 9])

+是一个可以接受任意数量参数的函数(它是多个参数)。