Как работает Hashset в отношении HashCode ()?JAVA

Программисты JAVA общаются здесь
Anonymous
Как работает Hashset в отношении HashCode ()?

Сообщение Anonymous »

Я пытаюсь понять java.util.collection и java.util.map немного глубже, но у меня есть некоторые сомнения относительно хэшса Funcionality:
В документации: Этот класс реализует набор interfect, обращенный к таблице Hashh hashhma, на самом деле (на самом деле hash hash hash hashhma hashhma hashhma hashhme (на самом деле говорит. экземпляр). Hashtable - это структура, которая запрашивает ключ и значение каждый раз, когда вы хотите добавить в него новый элемент. Затем значение и ключ хранятся в ведре на основе ключа Hashcode. Если хешкоды двух клавиш одинаковы, они добавляют оба значения клавиш в одно и то же ведро, используя LinkedList . Пожалуйста, поправьте меня, если я сказал что -то не так. Но хэштибель просит значение и ключ , так какой ключ он использует? Использует ли он просто значение, которое мы пытаемся добавить также в качестве ключа, а затем взять свой хэшкод? Пожалуйста, поправьте меня, если я сказал что -то не так о реализации HASHSET . Я спрашиваю об этом, потому что в документации говорится, что каждый раз, когда мы переопределяем equals () метод, нам нужно переопределить hashcode () Метод . Хорошо, это действительно имеет смысл, но я сомневаюсь в том, что это просто рекомендация, которую мы должны сделать, чтобы сохранить все «красивое и совершенное» (поставить таким образом), или если это действительно необходимо, потому что, возможно, много классов по умолчанию Java будут постоянно использовать метод hashcode () ваших объектов. В моем видении я не вижу других классов, использующих этот метод вместо тех классов, связанных с коллекциями. Большое спасибо, ребята

Подробнее здесь: https://stackoverflow.com/questions/247 ... o-hashcode

Вернуться в «JAVA»