J'ai une mission où j'ai besoin de créer une arrayliste d'objets Bookinventory avec des paramètres (String Booknum, String BooktiTle, int QOH, double bookprice). Où Booknum est le numéro ISBN d'un livre. Après avoir créé ce tableau, j'ai besoin d'utiliser la méthode de tri de la classe de collections. Dans ma classe BookInvension de mon entité, je dois écrire un comparète () qui finira par trier le tableau par Booknum (qui est une chaîne). Comment puis-je faire cela? C'est ma première expérience avec cela, et je ne comprends pas. p>
3 Réponses :
Cela devrait vous aider à démarrer:
public class BookInventory implements Comparable<BookInventory> {
// code
public int compareTo(BookInventory other){
return bookTitle.compareTo(other.bookTitle);
}
//code
}
Remarque rapide pour toute personne de lecture qui contrairement à remplacer les égaux, le paramètre d'entrée ne doit pas être de type objet.
Si vous regardez un Documentation pour les collections < / a> classe, vous verrez qu'il implémente deux trier code> mwethods. On prend tout type de liste code> avec un comparateur code> objet code> pour comparer des éléments de la liste. L'autre prend une liste code> de tout type d'objet implémentant comparable code>. Depuis comparète code> est défini par comparable code> (lorsqu'un comparateur code> doit mettre en œuvre comparer code>), qui vous indique que votre classe doit être déclaré comme implémente comparable comparète code>. Voir le Documentation pour Comparable.compareto (t) code> pour que votre méthode doit faire. Vous trouverez la méthode string code> comparèteo (chaîne) code> pour être utile. P>
La méthode comparète () est utilisée pour comparer deux objets qui ont plusieurs propriétés. Il retournera un entier pour indiquer lequel des objets comparés est plus grand. Cela a plus de sens si les objets comparés ont des propriétés qui ont un ordre naturel. P>
Valeur de retour: p>
oups mon mauvais. doigts de graisse en tapant. La dernière option est censée être "égale à 0". @Paul bénédiction. Merci