-
Bon, je me lance pour expliquer ce que thelvin veut dire. En fait, la méthode equals existe pour tous les objets et sert à verifier qu'un objet est egal à un autre.Par exemple, imaginons une classe personne avec 2 attributs : Nom et age. On redefinira la methode equals de maniere à renvoyer true si 2 personne ont le meme nom ET le meme age. Par contre, si on veut chercher les personnes qui ont seulement le meme age, on pourrait imaginer redefinir la methode equals pour n'utiliser que l'age. Mais dans ce cas, ce serait contraire à l'objectif original de cette methode qui est de verifier que 2 objets sont egaux. De plus, equals est utilisé par d'autres objets donc la redefinir de cette maniere implique un risque d'utilisation implicite (par exemple par la methode contains des listes).
Pour resumer, soit ton objet possede un et un seul attribut (celui que tu veux tester) et dans ce cas, redefinir equals est la bonne methode. Soit il en possede plusieurs (dont celui que tu veux tester) et dans ce cas, il est preferable de parcourir la liste.
a+
-
j'ai bien compris ce que tu m'as expliqué et puisque mon cas c'est bien ce que tu m'as dit"Soit il en possede plusieurs (dont celui que tu veux tester) et dans ce cas, il est preferable de parcourir la liste."
j'ai fait une fonction qui parcoure ma liste et cette fois aussi le pb est résolu.
merci pour toutes ces explications.