问题

  最佳答案

HashMap Hashtable 在Java中有几个区别:

  1. Hashtable同步,而HashMap不是.这使得HashMap更适合非线程应用程序,因为非同步对象通常比同步对象执行更好.

  2. Hashtable不允许null键或值. HashMap允许一个null键和任何数量的null值.

  3. HashMap的一个子类是 LinkedHashMap ,因此,如果您想要可预测的迭代顺序(默认情况下是插入顺序),您可以轻松地交换HashMap for LinkedHashMap.如果您使用Hashtable,这不会很简单.

由于同步不是您的问题,我建议HashMap.如果同步成为问题,您也可以查看 ConcurrentHashMap .

  相同标签的其他问题

javacollectionshashmaphashtable