【问题标题】:Safest option to replace hashtable?替换哈希表的最安全选项?
【发布时间】:2011-08-14 00:17:36
【问题描述】:

我有一些旧的第 3 方 Java 代码正在转换为 Java 6。它包含 HashTable 实例,这些实例被标记为过时的集合。我应该用什么代替它们?什么是最安全的选择?

【问题讨论】:

  • 离开他们。过时不等于不支持。

标签: java hashtable replace


【解决方案1】:

虽然在 API 文档中没有标记为已弃用,HashTable 已过时,您可以考虑使用 HashMap

对于差异,您可以查看this post

主要区别(文档所说的两个)是:

  1. HashMap 未同步;

  2. HashMap 可以包含nulls。

因此,当您将HashMap 换成HashTable 时,请注意这两个。

【讨论】:

    【解决方案2】:

    java.util.HashMap 具有非常相似的语义,但是它不同步。如果依赖同步行为,可以使用java.util.concurrent.ConcurrentHashMap

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-05
      • 1970-01-01
      • 2013-02-07
      • 2016-09-07
      • 1970-01-01
      • 2018-05-16
      • 2011-05-16
      相关资源
      最近更新 更多