标签: clojure concat idiomatic
最好用一个例子来解释我正在尝试的内容。
给定一个集合[“apple”“orange”“banana”]和串联字符串“,”函数应该生成“apple,orange,banana”
这是写这个函数的惯用方法吗?
user=> (defn my-concat[x st] (str (first x) (apply str (map #(str st %) (rest x))))) user=> (my-concat "abcd" "!") "a!b!c!d"
答案 0 :(得分:3)
如果您想要序列,可以使用interpose功能;如果只想要字符串结果,可以使用clojure.string/join。
interpose
clojure.string/join