迭代
dotimes
dotimes语句对表达式n次求值,返回nil
(dotimes [x 正整数] 表达式)
user=> (dotimes [i 2]
#_=> (println i))
0
1
nil
doseq
迭代有序集合,返回nil
(doseq [x 有序集合] 表达式)
user=> (doseq [n [1 2 3]]
#_=> (println n))
1
2
3
nil
for
for语句是一个根据绑定值产生list的语句,
user=> (for [c [:a :b]
n (range 2)]
[c n])
([:a 0] [:a 1] [:b 0] [:b 1])
loop 和 recur 语句
(loop 绑定值
(if 条件
(recur 提供绑值)
返回表达式))
user=> (loop i 0
(recur (inc i))
i))
10