Многие уважаемые разработчики, такие как Брайан Гетц и Джош Блох, отметили, что:
Если значение hashCode () объекта может меняться в зависимости от его состояния, тогда мы должны быть осторожны при использовании таких объектов, как ключи в коллекциях на основе хэшей, чтобы гарантировать, что мы не позволяем их состоянию изменять, когда они используются в качестве хеш-ключей. Все хэш-коллекции предполагают, что хэш-значение объекта не изменяется, пока оно используется в качестве ключа в коллекции. Если хэш-код ключа должен был измениться, пока он был в коллекции, некоторые непредсказуемые и запутанные последствия могли бы последовать. Обычно это не проблема на практике - распространенной практикой является использование изменяемого объекта, такого как List, как ключа в HashMap.
blockquote>