Sagen, ich habe einen Vektor:Clojure: Rufen Sie eine Funktion für jedes Element in einem Vektor mit ihm Index
(def data ["Hello" "World" "Test" "This"])
Und ich möchte einen Tisch irgendwo zu bevölkern, die eine api hat:
(defn setCell
[row col value]
(some code here))
was ist dann der beste Weg, die folgenden Anrufe zu bekommen passieren:
(setCell 0 0 "Hello")
(setCell 0 1 "World")
(setCell 0 2 "Test")
(setCell 0 3 "This")
fand ich, dass die folgenden arbeiten:
Aber gibt es einen schnelleren Weg, der keine neue temporäre Datenstruktur-IDV erfordert?
Clojure 1.2 hat 'map-indexed' hinzugefügt, was die einfachste und beste Option ist, die ich bisher gesehen habe. Siehe [Rollos Antwort unten] (http://stackoverflow.com/a/5992602/109618). –