Java HashMap;Рекомендуется? - PullRequest
       6

Java HashMap;Рекомендуется?

4 голосов
/ 01 октября 2010

Сообщалось, что с Java JDK 1.3.1 до JDK 1.4.0 HashMap работает в 5 раз медленнее (см. здесь ).

Каково состояние HashMap на Java 6? Рекомендуется ли использовать?

Спасибо.

Ответы [ 3 ]

11 голосов
/ 01 октября 2010

Эта ошибка помечена как исправленная в 1.4.0_02 и 1.4.1, поэтому, вероятно, нет необходимости беспокоиться о ее производительности в Java 1.6.

(Если вы находитесь в многопоточном окружении, вам, вероятно, нужен ConcurrrentHashMap.)

0 голосов
/ 01 октября 2010

@ Suresh Неправильно говорить, что HashMap полностью предотвращает столкновения.Фактически, в каждом сегменте находится реализация единственно связанного списка записей.Итак, столкновения случаются в HashMap.Я признаю, что не уверен в проценте столкновений по сравнению с Hashtable.

0 голосов
/ 01 октября 2010

Просто для вашей информации, если это еще не сделано. Разница между хэш-таблицей и хеш-таблицей заключается в том, что хеш-таблица синхронизирована и не допускает нулевое значение в качестве ключа. Основное отличие состоит в том, что хеш-карта имеет улучшенную хеш-функцию, предотвращающую получение двух разных объектов в одно ведро или для предотвращения столкновения хэша.

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