Java HashMap的解读

    技术2025-09-14  46

    HashMap源码解读

    1、底层实现

    jdk1.7:数组+链表jdk1.8:数组+链表+红黑树

    2、特点

    优点: 数组:查询快,插入删除慢链表:查询慢,插入删除快 红黑树:为了解决链表的查询问题而生

    3、为什么要加入红黑树?

    意义:解决链表查询问题

    4、添加元素时,直接使用红黑树?

    不是的,他是要等链表的长度大于等于8,和数组长度大于等于64才使用红黑树为什么呢?因为红黑树有个左旋和右旋的操作,通过泊松分布算出当链表长度为8时,链表相对于红黑树的操作复杂度才变大。

    5、HashMap源码解读

    尾插法

    j

    Processed: 0.015, SQL: 9