引用网上的一段话:[quote]当程序试图将一个key-value对放入HashMap中时,程序首先根据该 key 的 hashCode() 返回值决定该 Entry 的存储位置:如果两个 Entry 的 key 的 hashCode() 返回值相同,那它们的存储位置相同。如果这两个 Entry 的 key 通过 equals 比较返回 true,新添加 Entry 的 value 将覆盖集合中原有 Entry 的 value,但key不会覆盖。如果这两个 Entry 的 key 通过 equals 比较返回 false,新添加的 Entry 将与集合中原有 Entry 形成 Entry 链,而且新添加的 Entry 位于 Entry 链的头部[/quote]
我的疑问是,这段话要怎么理解
因为当我定义
[code="java"]
map.put(1,"a");
map.put(1,"b");
[/code]
此时map的size实际是1,map.get(1)为b也就是说后put的元素把前面的覆盖了。
所以我想知道的是这个Entry里有多个元素,该怎么理解?