41. Для чего нужен метод hashCode()?
UNKNOWNМетод hashCode() необходим для вычисления хэш кода переданного в качестве входного параметра объекта.
В Java это целое число, в более широком смысле - битовая строка фиксированной длины, полученная из массива произвольной длины. Этот метод реализован таким образом, что для одного и того же входного объекта, хэш код всегда будет одинаковым.
Следует понимать, что в Java множество возможных хэш кодов ограничено типом int, а множество объектов ничем не ограничено. Из-за этого, вполне возможна ситуация, что хэш коды разных объектов могут совпасть:
если хэш коды разные, то и объекты гарантированно разные;
если хэш коды равны, то объекты могут не обязательно равны.
Предыдущий вопрос: 40. Какой контракт между hashCode() и equals()?
Следующий вопрос: 42. Правила переопределения метода hashcode().
Все вопросы по теме: список
Все темы: список
Вопросы/замечания/предложения/нашли ошибку: напишите мне