标签:实现原理 cell head static class default util tail maximum
static final int DEFAULT_INITIAL_CAPACITY = 16;// 默认初始容量为16,必须为2的幂
static final int MAXIMUM_CAPACITY = 1 << 30;// 最大容量为2的30次方
static final float DEFAULT_LOAD_FACTOR = 0.75f;// 默认加载因子0.75
transient Entry<K,V>[] table;// Entry数组,哈希表,长度必须为2的幂
transient int size;// 已存元素的个数
int threshold;// 下次扩容的临界值,size>=threshold就会扩容
finalfloat loadFactor;// 加载因子
static final int TREEIFY_THRESHOLD = 8;//由链表转换成树的阈值
static final int UNTREEIFY_THRESHOLD = 6;//由树转换成链表的阈值
static final int MIN_TREEIFY_CAPACITY = 64;//被树化时最小的hash表容量,至少是TREEIFY_THRESHOLD的4倍
构造方法:
HashMap()
构造一个具有默认初始容量 (16) 和默认加载因子 (0.75) 的空 HashMap。
HashMap(int initialCapacity)
构造一个带指定初始容量和默认加载因子 (0.75) 的空 HashMap。
构造方法摘要 | |
---|---|
HashMap() 构造一个具有默认初始容量 (16) 和默认加载因子 (0.75) 的空 HashMap。 |
|
HashMap(int initialCapacity) 构造一个带指定初始容量和默认加载因子 (0.75) 的空 HashMap。 |
|
HashMap(int initialCapacity, float loadFactor) 构造一个带指定初始容量和加载因子的空 HashMap。 |
|
HashMap(Map<? extendsK,? extendsV> m) 构造一个映射关系与指定 Map 相同的 HashMap。 |
标签:实现原理 cell head static class default util tail maximum
原文地址:http://www.cnblogs.com/zawjdbb/p/7235934.html