JDK1.8 HashMap数据结构图 转红黑树时机

 

当链表中的元素个数大于8时,如果数组长度小于64则扩容,如果数组长度大于64则转红黑树

因为如果数组⻓度还⽐较⼩,可以先利⽤扩容来缩⼩链表的⻓度,而树化的临界值选择8是通过泊松分布算出的,结点个数为8出现的几率是亿分之6。不过亿分之6是在良好的hash算法情况下的概率,红黑树针对大量hash碰撞情况下依然有良好的查询性能。


版权声明:本文为Anenan原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。