JDK1.8之后HashMap在元素超过8的时候转红黑树结构
HashMap在初始时依然使用的是数组+链表的结构,
链表的复杂度为O(n),红黑树的复杂度为O(log(n))
从这方面看可以直接使用红黑树来存储,但是并没有这么做,源码中已给出解释:
因为树形结构会比常规的节点结构占用多一倍的空间,只用当节点足够多的时候,才会转换为树形结构
另外,为什么会在链表长度等于8的时候才去转换成红黑?
源码上描述:使用分布良好的HashCode,节点...
转载
2020-01-18 11:04:10 ·
1323 阅读 ·
0 评论