Java 当密钥被覆盖时,LinkedHashMap是否保持顺序?(爪哇)

Java 当密钥被覆盖时,LinkedHashMap是否保持顺序?(爪哇),java,Java,这是一个LinkedHashMap,想象一下它里面有很多值 LinkedHashMap=新建LinkedHashMap() 我的问题是,如果一个现有值位于索引4,而同一个键被放入地图中,它会简单地替换该值并保持在4吗?或者,它会添加到末尾吗?作者明确指出: 此链表定义了迭代顺序,通常是将关键帧插入贴图的顺序(插入顺序)。请注意,如果将键重新插入地图,则插入顺序不受影响。(如果m.put(k,v)在m.containsKey(k)将在调用前立即返回true时调用m.put(k,v),则将键k重新插

这是一个LinkedHashMap,想象一下它里面有很多值

LinkedHashMap=新建LinkedHashMap()

我的问题是,如果一个现有值位于索引4,而同一个键被放入地图中,它会简单地替换该值并保持在4吗?或者,它会添加到末尾吗?

作者明确指出:

此链表定义了迭代顺序,通常是将关键帧插入贴图的顺序(插入顺序)。请注意,如果将键重新插入地图,则插入顺序不受影响。(如果
m.put(k,v)
m.containsKey(k)
将在调用前立即返回
true
时调用
m.put(k,v)
,则将键
k
重新插入映射
m

因此,该值被替换,但迭代顺序将保持不变。对于您的示例,带有键4的条目在迭代中将保持在相同的位置