Как я могу перебирать элементы коллекции в Clojure, чтобы я мог получить доступ к предыдущим, текущим и следующим значениям на каждой итерации.Как перебирать коллекцию и иметь доступ к предыдущим, текущим и следующим значениям на каждой итерации?
Со следующим вектором:
[1 2 3 4]
Я хотел бы иметь доступ к следующим значениям в каждой итерации:
[nil 1 2]
[1 2 3]
[2 3 4]
[3 4 nil]
рекурсивная функция, которая принимает несколько аргументов и передать их в качестве аргументов повторялись? Похоже, я не понял ваш вопрос. –
@ DavidBern вы можете поместить образец кода? – eliocs
Его так учит читать вопросы и ответы в сообществе clojure. Я чувствую себя настолько глупо в сравнении. Решением, которое я имел в виду, было следующее: (loop [prev nil, [current & next] [0, 1, 2, 3, 4, 5, 6, 7]] (если (nil? Next) current (do (println next) (recur current next)))) При взгляде на ответ, данный Эрвином, я поражен тем, как я ушел, чтобы узнать :) –