Bonjour,
Je suis en train de travailler sur des HashSet de GenericClass (Classe que j'ai créée), classe pour laquelle j'ai implémenté equals() et hashCode(), et dont les attributs sont deux objets et un HashSet. Dans mon programme je boucle et sous certaines conditions j'ajoute une GeneriClass au HashSet.
Problème : tous les elements du HashSet prennent la valeur du dernier élément ajouté.
Exemple : C est le HashSet de GenericClass, les valeurs 1, 2 et 3 représentent les GenericClass à ajouter.
premier tour de boucle, ajout de 1 : c = 1,
deuxième tour ajout de 2 : c = 2, 2
troisième tour ajout de 3 : c = 3,3,3
....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 for (Element E : Ensemble) { if (condition1) { // la genericClass GC prend les valeurs voulues GC.setValues ; // j'ajoute la genericClass au hashSet<GenericClass> C C.add(GC); } if(condition2) { // la genericClass prend d'autres valeurs GC.setValues(EE); // j'ajoute la genericClass au hashSet<GenericClass> C C.add(GC); } System.out.println("nb elements C : "+C.size()); System.out.println (C.toString()); }
Y a t-il autre chose à implémenter pour manipuler un HashSet de classes(objets) ?
Merci d'avance pour vos réponses...
Partager