Je me demandais comment la méthode indexOf d'un ArrayList est implémentée. En fait, j'ai surchargé la méthode equals comme ceci :
public class CustomObject {
@Override
public boolean equals(Object o) {
if(o instanceof CityLoader)
return ((CityLoader)o).getName() == this.name;
else if (o instanceof String)
return this.name.equals((String)o);
return false;
}
}
Je pensais que cela m'éviterait de surcharger également la méthode indexOf mais il semble que je me trompe complètement. Lorsque j'essaie
ArrayList customObjects = new ArrayList
... insérer customobject dans la arraylist ...
customObjects.indexOf(new String("name"))
indexOf retourne false mais il devrait retourner true. (J'ai vérifié que l'élément que je recherche existe)
Suis-je complètement dans l'erreur ?