Как HashSet не позволяет дубликаты?

Я проходил черезadd методHashSet, Упоминается, что

Если этот набор уже содержит элемент, вызов оставляет набор неизменным и возвращает false.

Ноadd метод внутреннего сохранения значений вHashMap

public boolean add(E e) {
    return map.put(e, PRESENT)==null;
}

put методHashMap говорится, что

Связывает указанное значение с указанным ключом в этой карте. Если карта ранее содержала сопоставление для ключа, старое значение заменяется.

Так что еслиput методHashMap заменяет старое значение, какHashSet add метод оставляет набор неизменным в случае дублирования элементов?

Ответы на вопрос(6)

Ваш ответ на вопрос