java中,HashMap和Hashtable有什么区别?

2025-05-18 10:48:32
推荐回答(1个)
回答(1):

  • HashMap和Hashtable都实现了Map接口,因此很多特性非常相似。但是,他们有以下不同点:

  • HashMap允许键和值是null,而Hashtable不允许键或者值是null。

  • Hashtable是同步的,而HashMap不是。因此,HashMap更适合于单线程环境,而Hashtable适合于多线程环境。

  • HashMap提供了可供应用迭代的键的集合,因此,HashMap是快速失败的。


另一方面,Hashtable提供了对键的列举(Enumeration)。一般认为Hashtable是一个遗留的类。