Classe PhoneList : Comportement incohérent lors de comparaison dans les méthodes find() et equals()
Lors de la recherche d'un Phone via la méthode find(Phone)
de PhoneList, la valeur de l'attribut phoneNumber
est comparé, mais pas celle de l'attribut comment
.
Lors d'une comparaison equals(Phone)
les deux attributs sont comparés et doivent être égaux pour renvoyer true
.
Cela signifie entre autre que le comportement de PhoneList n'est pas celui d'une List usuel (qui utiliserais toujours equals() comme fonction de comparaison), ni celui d'un Set (idem). Ceci est perturbant du point de vue de la lisibilité, car cela "casse" les attentes usuel du développeur. Ce comportement ne semlbe pas particulièrement justifié du point de l'intuition de ce que devrait être une classe gérant des numéro de téléphone associé à un commentaire.