一、HashTable的基本介绍
1.存放的元素是键值对:即K-V
2.hashtable的键和值都不能为null,否则会抛出NullPointerException
3.hashTable使用方法基本上和HashMap一样
4.HashTable是线程安全的(Synchronized),HashMap是线程不安全的
二、HashTable源码
1.底层有数组,Hashtable$Entry[] 初始化大小为11
2.阈值 threshold 8 = 11 * 0.75 hashMap是 threshold 12 = 16 * 0..75
3.扩容:按照自己的扩容机制来进行
4.执行方法addEntry(hash, key, value, index);添加K-V封装到Entry
5.当if(count >= threshold)满足时,就进行扩容
按照int newCapacity = (oldCapacity << 1) + 1的大小扩容,是原来容量的2n+1倍。