Что будет, если переопределить equals() не переопределяя hashCode()? Какие могут возникнуть проблемы?



Классы и методы, которые используют правила этого контракта могут работать некорректно. Так для HashMap это может привести к тому, что пара «ключ-значение», которая была в неё помещена при использовании нового экземпляра ключа не будет в ней найдена.