gpt4 book ai didi

java - 如何更新 map 中的值,保持顺序

转载 作者:行者123 更新时间:2023-11-30 04:34:05 25 4
gpt4 key购买 nike

我有一个带有自定义比较器TreeMap。我想更新 Map 的某个值,但是如果 Comparator 检查的字段发生更改,Map 是否会保持其顺序?

最佳答案

您永远不应该修改存储在映射中的键。或者至少不要修改用于实现 equals()hashCode() (在 HashMap 的情况下)或 compareTo() 的任何字段code>/compare()(对于 SortedMap)。

这将使 map 处于不一致的状态,并且您不能指望它在这样做后能够可靠地工作。

当然,您可以从 map 中删除 key ,修改它,然后重新插入。

但是你最好使用不可变类型作为映射的键,以避免搬起石头砸自己的脚。

关于java - 如何更新 map 中的值,保持顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13922115/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com