Clojure:映射可变长度向量

时间:2015-05-21 16:29:30

标签: clojure

(map +  [1 2] 
        [100]
        [1 2 3] 
        [1 2 3 4] )

产量(103)

我需要什么才能获得这些收益(103 6 6 4)?

1 个答案:

答案 0 :(得分:2)

只要任何集合参数用尽,映射就会停止处理。由于[100]仅包含单个元素,map仅处理示例中传递的每个集合的第一个元素。

如果您想使用map,那么您需要填充集合以使它们具有相同的大小,例如:

(map +  [1 2 0 0] 
        [100 0 0 0]
        [1 2 3 0] 
        [1 2 3 4])
=> (103 6 6 4)