2024年Clojure调查中分享您的看法!

欢迎!请参阅关于页面,了解有关此操作的更多信息。

0
Clojure

user=> (let [a (array-map Double/NaN 1)] (assoc a (key (first a)) "foo")) {NaN 1, NaN "foo"} user=> (let [a (hash-map Double/NaN 1)] (assoc a (key (first a)) "foo")) {NaN "foo"}

方法:数组映射的比较跳过了身份检查,并且总是将调用委托给.equals调用。附带的补丁通过在委托给.equals之前进行适当的指针检查来使数组映射的行为与哈希映射保持一致。

1 个答案

0
参考:[https://clojure.atlassian.net/browse/CLJ-1792](https://clojure.atlassian.net/browse/CLJ-1792) (由bronsa报告)
...