Сообщалось, что с Java JDK 1.3.1 до JDK 1.4.0 HashMap работает в 5 раз медленнее (см. здесь ).
Каково состояние HashMap на Java 6? Рекомендуется ли использовать?
Спасибо.
Эта ошибка помечена как исправленная в 1.4.0_02 и 1.4.1, поэтому, вероятно, нет необходимости беспокоиться о ее производительности в Java 1.6.
(Если вы находитесь в многопоточном окружении, вам, вероятно, нужен ConcurrrentHashMap.)
@ Suresh Неправильно говорить, что HashMap полностью предотвращает столкновения.Фактически, в каждом сегменте находится реализация единственно связанного списка записей.Итак, столкновения случаются в HashMap.Я признаю, что не уверен в проценте столкновений по сравнению с Hashtable.
Просто для вашей информации, если это еще не сделано. Разница между хэш-таблицей и хеш-таблицей заключается в том, что хеш-таблица синхронизирована и не допускает нулевое значение в качестве ключа. Основное отличие состоит в том, что хеш-карта имеет улучшенную хеш-функцию, предотвращающую получение двух разных объектов в одно ведро или для предотвращения столкновения хэша.