Wei*_*Qiu 11 vector clojure map
(map vector [1 2 3] [4 5])
Run Code Online (Sandbox Code Playgroud)
会给:
([1 4] [2 5])
Run Code Online (Sandbox Code Playgroud)
这里3被丢弃了.
如果我想自动将那些太短的seqs填充到最大长度怎么办?
例如,如果我想获得什么是惯用的方式
([1 4] [2 5] [3 nil])
Run Code Online (Sandbox Code Playgroud)
ama*_*loy 14
(defn map-all [f & colls]
(lazy-seq
(when (some seq colls)
(cons (apply f (map first colls))
(apply map-all f (map rest colls))))))
(map-all vector [1 2 3] [4 5])
;=> ([1 4] [2 5] [3 nil])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
273 次 |
| 最近记录: |