Ajouter un commentaire

fredericmazue

La méthode équals permet de tester l'égalité entre deux objets.
Par défaut elle vérifie l'égalité des références. Ce qui revient à utiliser l'opérateur == finalement. Si les références sont égales, les objets sont les mêmes et donc sont considérés égaux.

Dans certains cas la méthode est rédéfine. Pour la classe String notamment. Si elle ne l'était *PAS* tu aurais:
String s1 = "tiger360";
String s2 = "tiger360";
s1 == s2; ===> false
s1.equals(s2); ===> false

*MAIS* et heureusement, dans le cas d'une chaîne, la méthode equals de objets est redéfinie et on a un comportement conforme à ce que l'on attend:

String s1 = "tiger360";
String s2 = "tiger360";
s1 == s2; ===> false car ce sont deux objets différents
s1.equals(s2); ===> true car le contenu des chaînes est le même :)

En résumé, si tu écris toi même une classe et que tu as besoin de tester l'égalité, tu redéfinis la methode equals et dedans tu mets les tests dont tu as besoin.

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 ZZZZZ   GGG    CCC  L     Y   Y 
Z G C L Y Y
Z G GG C L Y
Z G G C L Y
ZZZZZ GGG CCC LLLL Y