Comparateur avecTreeSet Java - Java - Programmation
Marsh Posté le 01-09-2014 à 16:48:51
Je suis p'tetre un peu con mais pourquoi le comparateur de ton TreeSet c'est celui de CancellationOption et pas celui de Test?
Peux-tu filer la definition du comparateur de CancellationOption?
Pourquoi definir un comparateur pour Test si c'est pour ne pas s'en servir?
Enfin bref, en copiant/collant ton code tel quel dans Eclipse, changeant le comparateur du TreeSet pour utiliser celui de Test, et corrigeant les appels aux constructeur qui sont invalides (3 parametres passes pour 4 demandes), ca marche nickel.
Marsh Posté le 01-09-2014 à 17:28:40
Oui desole il n ya pas de Cancellation option.
Il y que Test.
J ai corrige le code ci dessus.
mais le probleme subsiste.
desole pour le malentendu !!!!
Marsh Posté le 01-09-2014 à 18:47:28
Ben heu "le probleme subsiste", il faut que tu sois plus precis. Comme dit plus haut, ton code marche tel quel sous Eclipse:
public class Test implements Comparable<Test > { |
Le System.out.println m'affiche bien 3, et si je debugge dessus, je vois bien le TreeSet en memoire avec 3 elements tries (3f sur la racine, 2f a gauche de la racine, 4f a droite de la racine).
Edit: et si tu affiches le contenu de l'arbre:
public static void main(String[] args) { |
2.0 |
Marsh Posté le 01-09-2014 à 16:24:51
Bonjour,
J ai cree une classe Test pour laquelle j ai defini un comparatuer :
En gros, j aimerais stocker dans un TreeSet differents objets Test tries par ordre ascendant suivant number, weight (si number est le meme pour deux objets) ou category (si number et weight sont les memes pour deux objets).
Le probleme c est que etant donne ce code,
je m attendrais a tree contenant [t1, t2, t3] alors que je n obtiens dans tree que t1.
Je comprends pas pourquoi bien que les trois objets sont tous differents et donc ne s excluent pas dans le TreeSet.
Qu en pensez vous ?
Merci de votre aide ?
Message édité par ahmadou_20 le 01-09-2014 à 17:33:59