Middle
38
0
questionbank

Что будет возвращено методом HasMap.get(), если методы equals и hashCode не переопределены?

Answer from sobes.tech neural network

null будет возвращено, если ключ, по которому производится поиск, не является тем же самым объектом (имеет то же самое ссылочное равенство), который был использован при вставке элемента.

Причина в том, что HashMap для определения "равенства" ключей использует комбинацию hashCode() и equals(). Если эти методы не переопределены, используются реализации из Object.

  1. Object.hashCode() обычно возвращает значение, основанное на адресе объекта в памяти, то есть уникальное для каждого экземпляра.
  2. Object.equals() просто проверяет ссылочное равенство (this == obj).

Таким обра

null будет возвращено, если ключ, по которому производится поиск, не является тем же самым объектом (имеет то же самое ссылочное равенство), который был использован при вставке элемента.

Причина в том, что HashMap для определения "равенства" ключей использует комбинацию hashCode() и equals(). Если эти методы не переопределены, используются реализации из Object.

  1. Object.hashCode() обычно возвращает значение, основанное на адресе объекта в памяти, то есть уникальное для каждого экземпляра.
  2. Object.equals() просто проверяет ссылочное равенство (this == obj).

Таким обра

Register or sign in to get access to full answers for all questions from the question bank.

javahashmapequalshashcodecollectionsmethodsinheritance