Creation d une collection d objets avec ordre de stockage particulier

Creation d une collection d objets avec ordre de stockage particulier - Java - Programmation

Marsh Posté le 29-08-2014 à 13:47:51    

Salut,
 
En fait, j aimerais creer une collection d objets Pair (une classe que j ai creee) de telle facon qu a chaque fois que je rajoute un Pair a ma collection, il se met dans le bon ordre (selon un comparateur pairComparator que j ai implemente dans la classe Pair).
 
Le probleme c est que avec List,ca marche pas. C est tjs l ordre de l insertion qui est maintenu ( a moins que je fasse un sort avec pairComparator, ce qui risque d etre trop couteux si mon programme est gros).
 

Code :
  1. Pair pair1 = new Pair(1, "A" );
  2. Pair pair2 = new Pair(2, "B" );
  3. List<Pair> list = Arrays.asList(pair1, pair2); 
  4. Collection.sort(list, pairComparator);


 
 Y a t-il une autre structure de donnees qui permet de le faire automatiquement sans avoir a retreir la collection a chaque fois qu un objet y est rajoute ?
C est a dire des que j ecris  
 

Code :
  1. list.add(pair1);


 
pair1 se met dans le bon ordre dans la liste (tout comme put avec TreeMultimap par exemple).
 
Merci de votre aide.

Reply

Marsh Posté le 29-08-2014 à 13:47:51   

Reply

Marsh Posté le 29-08-2014 à 16:04:57    

La réponse est dans la question, TreeMultimap.
 
Si tu veux plus efficace qu'un arbre il faudrait nous donner plus de détails.
Tu vas accéder au contenu souvent ou principalement faire des insertions? Tu connais la taille maximale de ta collection? Est-ce que les éléments qui servent à la comparaison sont plutôt contigus ou très éparses?


---------------
click clack clunka thunk
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed