如果我尝试assoc!在瞬态向量上做1000 000 ,我将获得1000 000个元素的向量
(count
(let [m (transient [])]
(dotimes [i 1000000]
(assoc! m i i)) (persistent! m)))
; => 1000000
Run Code Online (Sandbox Code Playgroud)
另一方面,如果我对地图做同样的事情,它只会有8个项目
(count
(let [m (transient {})]
(dotimes [i 1000000]
(assoc! m i i)) (persistent! m)))
; => 8
Run Code Online (Sandbox Code Playgroud)
有没有理由发生这种情况?