Problème Méthode d'instance compare()
Bonjour,
en fait j'essaye de faire un exo et je bloque voila mon énoncé :
Dans la classe Livre écrivez une méthode d'instance compare pour comparer 2 livres sur leur nombre de pages.
compare prend un livre en paramètre et elle renvoie 0 si le livre a le même nombre de pages que l'instance qui reçoit le message, 1 si l'instance courante ("this") a plus de pages que le parametre et -1 sinon.
Pour tester, vous utiliserez un code semblable au suivant :
Code:
1 2 3 4 5 6
| System.out.print("L'auteur du plus gros livre est ");
String auteurPlusGrosLivre;
// Le code pour trouver le livre qui a le plus de pages (entre 2 livres)
// Ecrivez 2 versions : une avec if et l'autre avec switch
. . .
System.out.println(auteurPlusGrosLivre); |
Et voila le code de ma méthode :
Code:
1 2 3 4 5 6 7 8 9
| public void compare(Object l) {
if (this.nbPages == nbPages) {
System.out.println("0");
} else if (this.nbPages > nbPages) {
System.out.println("1");
} else {
System.out.println("-1");
}
} |
Je n'ai pas d'erreur à la compilation mais quand j'exécute il renvoie toujours 0, alors qu'il ne devrait pas dans certains cas.
Merci de m'aider je bloque depuis un moment je ne sais pas comment faire. :?