例如,我有一个向量[1, 2, 3]
,我想更新第二个元素,以便向量变为[1, 5, 3]
.在其他语言中,我会做类似的事情array[1] = 5
,但我不知道任何可以让我在Clojure中轻松完成的事情.
关于如何实现这一点的想法,或者我是否应该使用不同的数据结构?
yve*_*mes 75
assoc
工作得很好.它将索引放在哪里放置新值并返回新创建的向量:
Clojure> (assoc [1 2 3] 1 5)
[1 5 3]
Run Code Online (Sandbox Code Playgroud)