Set里的东西不能重复,那么如果有重复怎么办?
// 1. 如果key 相等if (p.hash == hash &&((k = p.key) == key || (key != null && key.equals(k))))e = p;// 2. 修改对应的valueif (e != null) { // existing mapping for keyV oldValue = e.value;if (!onlyIfAbsent || oldValue == null)e.value = value;afterNodeAccess(e);return oldValue;}
添加元素的时候,元素相同则修改value,但是Set里面的value都是同一个object
所以:Set添加相同的元素的时候,根本没有进行插入,仅仅是修改了一个无用的value,
