set通过哈希机制确保元素唯一
1、 首先获取新添加键的哈希码值
2、 根据键的哈希值与当前表长度进行按位与运算,确定数组索引位置。
3、 此处的hashCode在equals之前进行判断,JVM会优先执行逻辑或运算的前半部分,若其结果为true,则直接终止后续判断并返回true。
4、 当哈希码不同时,直接判定对象不相等,无需执行equals方法。
5、 将待插入键的哈希值与当前HashMap中已定位键的哈希值进行比较。
6、 若发现待添加的键已存在于HashMap中,则将其对应的值更新为新值。
评论
更多评论