HashMap 和 Hashtable 的区别

  1. HashMap 允许 key 和 value 为 null,Hashtable 不允许。
  2. HashMap 的默认初始容量为 16,Hashtable 为 11。
  3. HashMap 的扩容为原来的 2 倍,Hashtable 的扩容为原来的 2 倍加 1。
  4. HashMap 是非线程安全的,Hashtable是线程安全的。
  5. HashMap 的 hash 值重新计算过,Hashtable 直接使用 hashCode。
  6. HashMap 去掉了 Hashtable 中的 contains 方法。
  7. HashMap 继承自 AbstractMap 类,Hashtable 继承自 Dictionary 类。
上一篇:HashMap底层实现原理及面试问题


下一篇:重新认识Java--HashMap、HashTable和ConcurrentHashMap