【Java】HashMap原理-JDK1.7与JDK1.8的区别
一、HashMap 扩容JDK1.7 和JDK1.8 扩容原理相同HashMap初始化大小为16, 负载因子为0.75,每次当容量大于16 * 0.75 时, 进行扩容,扩容为原来的两倍。JDK1.7: 扩容后需要重新计算hashcode值。JDK1.8:扩容后无需重新计算hashcode值。(具体看后面“HashMap的容量为2的幂次方”部分)二、HashMap的冲突解决JDK1.7以前HashMap使用 数组 + 链表的方式来解决哈希冲突,并使用头插法。使用头插法的原因:一般情况下
原创
2022-03-11 14:36:21 ·
2282 阅读 ·
0 评论