Quelle est l'utilisation de la méthode equals de substitution en Java?
Quelle est l'utilisation de la méthode equals de substitution en Java?

Vidéo: Quelle est l'utilisation de la méthode equals de substitution en Java?

Vidéo: Quelle est l'utilisation de la méthode equals de substitution en Java?
Vidéo: Apprendre Java #5 Méthode 2024, Mars
Anonim

Remplacer est égal à et hashCode dans Java

équivaut à () méthode est utilisé pour comparer les objets pour l'égalité tandis que hashCode est utilisé pour générer un code entier correspondant à cet objet

À quoi sert la méthode equals en Java ?

Les équivaut à () méthode compare deux objets pour l'égalité et renvoie vrai s'ils sont égal . Les équivaut à () méthode fourni dans la classe Object les usages l'opérateur d'identité (==) pour déterminer si deux objets sont égal . Pour les types de données primitifs, cela donne le résultat correct.

De plus, comment remplacer la méthode equals en Java ? Dans le morceau de code ci-dessus, la classe Person a une méthode equals() remplacée, qui a suivi l'approche étape par étape suivante:

  1. Si la référence à cet objet est la même que la référence à l'objet argument, retourne true.
  2. Si l'argument est nul, retourne false.
  3. Si les objets ne sont pas de la même classe, retourne false.

Par conséquent, pourquoi devons-nous remplacer la méthode equals en Java ?

La classe String remplace les méthode égale il a hérité de la classe Object et a implémenté une logique pour comparer les deux objets String caractère par caractère. La raison pour laquelle méthode égale dans la classe Object, l'égalité de référence est due au fait qu'elle ne sait rien faire d'autre.

À quoi sert la substitution de la méthode hashCode et equals en Java ?

si une classe remplace équivaut à , il doit remplacer le hashCode . quand ils sont tous les deux outrepassé , équivaut à et code de hachage doit utilisation le même ensemble de champs. si deux objets sont égal , puis leur code de hachage les valeurs doivent être égal également. si l'objet est immuable, alors code de hachage est un candidat pour la mise en cache et l'initialisation paresseuse.

Conseillé: