HashMap:
加入元素时位置不确定,比如你前几个put它插入到0索引,后几个put它又放到最后,属于是插入时无序。不过存储有序,比如它如果不变动的情况下,每次输出都是一样的。
LinkedHashMap:
“linked”就像是有一条线牢牢绑着它们一样,据我debug发现:
首先,你添加新元素它都是放到最后的,有序的。
其次,当你用已存在的key键所组成的键值对用put方法覆盖时,它会覆盖在被覆盖者的位置上,也就是说,即使覆盖了,本来的顺序依然不变,变得只有value。
而HashMap, 按它插入无序的特点,本来在这个位置上的键值对,一旦覆盖,它就又蹦到另一个位置上了。