Bonjour
Je cherche une collection de type Map qui ne trie pas les objets.
HashMap, TreeMap et SortedMap d'apres mes premiers tests ne respecte pas mon ordre d'insertion.
Merci d'avance
Philippe
Version imprimable
Bonjour
Je cherche une collection de type Map qui ne trie pas les objets.
HashMap, TreeMap et SortedMap d'apres mes premiers tests ne respecte pas mon ordre d'insertion.
Merci d'avance
Philippe
Bonjour
L'ordre d'insertion dans les Map ne veux rien dire.
Les Clés des Map sont triée pour que la recherche soit plus rapide.
La TreeMap et la SortedMap utilisent un comparator pour ordonnée les clés.
Et la HashMap utilise le hash code pour ordonnée les clés.
Si tu veux garder l'ordre, il faut utiliser des 'List'
Salut,
Pour conserver l'ordre d'insertion, il faut utiliser une LinkedHashMap...
a++
Bonjour
J'ai essaye la LinkedHashMap, pour l'ordre c'est ok, mais j'ai des clefs en double que je dois conserver.
Je veux simplement une liste qui garde l'ordre , je vais passer par un tableau je pense
à ce moment-là tu peux passer par une List<TonObjetQuiVaBien> directement comme l'a dit Alkhan
Si tu regardes la première ligne de la Javadoc de Map :Citation:
J'ai essaye la LinkedHashMap, pour l'ordre c'est ok, mais j'ai des clefs en double que je dois conserver.
Donc la Map n'est pas adaptée à ton besoin.Citation:
An object that maps keys to values. A map cannot contain duplicate keys; each key can map to at most one value.
Bonjour
J'ai resolu le pb, j'ai mis un Vector contenant un tableau de 2 objets, l'un etant la clef et l'autre la data.
Comme je dois tous les parcourir cela fonctionne
Merci
Philippr
Déjà il ne faut plus trop utiliser Vector :
http://java.developpez.com/faq/java/...ECTIONS_vector
Sinon pour un parcours de liste c'est basique, le mieux est de suivre un tutoriel Java.
Avec la boucle for simplifiée ça donne:
Tu peux aussi utiliser un entier ou un Iterator, mais encore une fois il vaut mieux suivre un tuto...Code:
1
2
3
4
5
6 List<TonObjetQuiVaBien> laListe; (...) for(TonObjetQuiVaBien lobjetDeLaListe:laListe) { (manipulation de lobjetDeLaListe) }