当您解析字符串列表并且想要将每个字符串拆分为两个,然后创建一个hashmap时,会发生这种情况。
假设我们有一个字符串列表,每个字符串都有第一行ID和休息数据:
("#ID
data
More data",
"#another ID
Some more data still")
现在假设我们使用以下方法返回嵌套结构:
(map #(clojure.string/split % #"\n" 2) data)
现在,如果我们想将它放入一个hashmap,首先必须是flatten
'd然后是apply hash-map
'd。有没有办法跳过flatten
部分并让一些flat-map
返回非嵌套结构?
答案 0 :(得分:4)
您可以使用into
:
(into {} (map #(clojure.string/split % #"\n") data))