HashMap 和Hashtable 的区别
时间: 2024-02-09 21:57:35 浏览: 54
HashMapvs.TreeMapvs.Hashtable
HashMap和Hashtable都是用于存储键值对的数据结构,主要区别有如下几点:
1. 线程安全:Hashtable是线程安全的,而HashMap是非线程安全的;
2. null值:HashMap可以存储null值作为key或value,而Hashtable则不允许任何null值;
3. 初始容量和加载因子:Hashtable的默认初始容量为11,加载因子为0.75;而HashMap的默认初始容量为16,加载因子也是0.75;
4. 遍历方式:由于Hashtable是早期的Java类,它的遍历方法是Enumeration;而HashMap由于继承了AbstractMap类,支持通过Iterator迭代器遍历;
5. 继承的父类不同:Hashtable继承自Dictionary类,而HashMap继承自AbstractMap类。
阅读全文