如何从Clojure中的指定点循环遍历集合?
如何在集合上循环但从该集合中的不同指定点开始?也就是说,如果我有 [“a” “b” “c” “d” “e”] 能够通过指定从第三个位置开始(或者可能是第二个,如果它需要被零索引)?
回答
您可以从循环的集合中删除一些元素:
user=> (def elems [:a :b :c :d :e])
#'user/elems
user=> (->> elems cycle (drop 2) (take 10))
(:c :d :e :a :b :c :d :e :a :b)