如何从 Clojure 中的指定点循环遍历集合?

THX*_*137 0 clojure clojurescript

如何在集合上循环但从该集合中的不同指定点开始?也就是说,如果我有 [“a” “b” “c” “d” “e”] 能够通过指定从第三个位置开始(或者可能是第二个,如果它需要被零索引)?

Den*_*ida 7

您可以从循环的集合中删除一些元素:

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)
Run Code Online (Sandbox Code Playgroud)