HashMap与Hashtable都是java的集合类。都能够用来存放java对象。这是他们的同样点,可是他们也有差别:

一:历史原因:

Hashtable是基于陈旧的Dictionary类的,HashMap是基于java 1.2引进的Map接口的一个实现类。

二:同步性

Hashtable 是同步的,该类的方法保证了。Hashtable中的对象是线程安全的,而HashMap则是异步的。因此HashMap中的对象并非线程安全的,由于同步的要求会影响运行的效率。所以假设不须要线程安全的集合。那么我们就要毫不犹豫的使用HashMap,这样能够避免由于同步带来的不必要的性能开销,从而提高效率。

三:值

HashMap能够让你将空值null作为一个元素的key或者value

可是Hashtable是不能够放入空值null的。

最大的区别就是同步性上的区别。

相关文章:

  • 2021-07-21
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-10-23
  • 2022-01-17
  • 2021-10-05
相关资源
相似解决方案