Hashtable与HashMap有什么不同之处?
- 安全性
- Hashtable是线程安全,HashMap是非线程安全。
- HashMap的性能会高于Hashtable,我们平时使用时若无特殊需求建议使用HashMap,在多线程环境下可以使用Hashtable.
- 是否可以使用null作为key
- Hashtable不允许null作为 key, 而HashMap可以使用null作为 key,不过建议还是尽量避免这样使用。HashMap以null作为key时总是存储在table数组的第一个节点上。
- 默认容量及如何扩容
- HashMap 的初始容量为16,Hashtable初始容量为11,两者的填充因子默认都是0.75。HashMap扩容时是当前容量翻倍即:capacity(容量)*2,Hashtable扩容时是容量翻倍+1,即:capacity (2)+1.

浙公网安备 33010602011771号