美文网首页
Hashmap 桶内元素由链表转化为红黑树的条件

Hashmap 桶内元素由链表转化为红黑树的条件

作者: Change_6556 | 来源:发表于2019-10-09 17:10 被阅读0次

    // 1. 最小树形化容量阈值:即 当哈希表中的容量 > 该值时,才允许树形化链表 (即 将链表 转换成红黑树)

    // 否则,若桶内元素太多时,则直接扩容,而不是树形化

    // 为了避免进行扩容、树形化选择的冲突,这个值不能小于 4 * TREEIFY_THRESHOLD

    static final int MIN_TREEIFY_CAPACITY = 64;

    // 2. 桶的树化阈值:即 链表转成红黑树的阈值,在存储数据时,当链表长度 > 该值时,则将链表转换成红黑树

    static final int TREEIFY_THRESHOLD = 8;

    // 3. 桶的链表还原阈值:即 红黑树转为链表的阈值,当在扩容(resize())时(此时HashMap的数据存储位置会重新计算),在重新计算存储位置后,当原有的红黑树内数量 < 6时,则将 红黑树转换成链表

    static final int UNTREEIFY_THRESHOLD = 6;

    相关文章

      网友评论

          本文标题:Hashmap 桶内元素由链表转化为红黑树的条件

          本文链接:https://www.haomeiwen.com/subject/ekbgpctx.html