Junior — Middle
Comment la méthode equals compare-t-elle deux objets en Java?
sobes.tech IA
Réponse de l'IA
La méthode equals en Java est utilisée pour comparer deux objets en termes d'égalité sémantique. Par défaut, si elle n'est pas redéfinie, elle compare les références (c'est-à-dire, vérifie si les objets pointent vers la même instance).
Lors de la redéfinition de equals, on compare généralement le contenu des objets, par exemple, les valeurs des champs.
Une implémentation typique de equals inclut :
- Vérification de l'égalité des références (
this == obj) - Vérification de
nullet de la compatibilité des classes - Comparaison des champs significatifs des objets
Exemple :
@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null || getClass() != obj.getClass()) return false;
MyClass other = (MyClass) obj;
return Objects.equals(field1, other.field1) && field2 == other.field2;
}
Il est également important de redéfinir hashCode lorsque equals est redéfini, afin de maintenir le contrat entre ces méthodes.