Junior
Com que campos deve-se fazer hashCode se equals nos satisfaz?
sobes.tech IA
Resposta da IA
Se o método equals já estiver definido e funcionar corretamente, então hashCode deve ser baseado nos mesmos campos que participam na comparação em equals. Isso é necessário para cumprir o contrato entre equals e hashCode: objetos iguais segundo equals devem ter o mesmo hashCode.
Por exemplo, se equals compara os campos id e name, então hashCode deve ser calculado com base nesses mesmos campos:
@Override
public int hashCode() {
return Objects.hash(id, name);
}