HashMap 与 HashTable的区别

1.版本不同

  • HashTable从jdk1.0开始有的
    HashMap 与 HashTable的区别
  • HashMap从jdk1.2之后有的
    HashMap 与 HashTable的区别

2.线程安全问题

  • HashTable的put添加方法因为加同步锁,线程是安全
    HashMap 与 HashTable的区别
  • HashMap的put添加方法没有加同步锁,线程不安全
    HashMap 与 HashTable的区别

3.父类不同,但二者都实现了Map接口

  • HashTable的父类是Dictionary
    HashMap 与 HashTable的区别

  • HashMap的父类是AbstractMap
    HashMap 与 HashTable的区别

3.key和value的取值范围不同

  • HashTable的key和value都不能为null
  • HashMap的key和value都可以为null

相关文章: