Sobes.tech
Junior — Middle

Como implementas a comparação de objetos por igualdade através do método equals?

sobes.tech IA

Resposta da IA

Para uma comparação correta de objetos em Java através do método equals, é necessário sobrescrever esse método na sua classe, considerando todos os campos relevantes que determinam a igualdade dos objetos. Recomendações gerais:

  • Verifique se o objeto não é null.
  • Verifique se os objetos são da mesma classe.
  • Compare todos os campos que influenciam a igualdade.

Exemplo de implementação para a classe Person:

@Override
public boolean equals(Object obj) {
    if (this == obj) return true; // verificação de igualdade por referência
    if (obj == null || getClass() != obj.getClass()) return false; // verificação de null e classe
    Person other = (Person) obj;
    return Objects.equals(name, other.name) && age == other.age;
}

Também é recomendado sobrescrever hashCode ao sobrescrever equals para funcionamento correto em coleções.