Самый безопасный вариант заменить хэш-таблицу? - PullRequest
2 голосов
/ 14 августа 2011

У меня есть какой-то старый сторонний Java-код, который я преобразовываю в Java 6. Он содержит HashTable экземпляров, которые помечены как устаревшие коллекции.Чем я должен их заменить?Какой самый безопасный вариант?

Ответы [ 2 ]

6 голосов
/ 14 августа 2011

Хотя это и не помечено как устаревшее в документации API, HashTable устарело, вы можете рассмотреть возможность использования HashMap.

Для отличий вы можете проверить thispost .

Основные отличия (два, о которых говорил доктор):

  1. HashMap не синхронизирован;

  2. HashMap может содержать null с.

Так что остерегайтесь этих двух, когда вы меняете HashMap на HashTable.

4 голосов
/ 14 августа 2011

java.util.HashMap имеет очень похожую семантику, однако она не синхронизирована. Если вы зависите от синхронизированного поведения, вы можете использовать java.util.concurrent.ConcurrentHashMap

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...