> J'ai une Map de paires d'objets.
> Chaque paire est constitu�e d'un objet unique (la cl�),
> et d'un objet theValue.
> Mais je souhaiterai trier ma map selon l'objet theValue,
> sachant que theValue n'est pas unique.

Une id�e : permuter les cl�s et les valeurs.

public static void main(String[] args) {

  Map map = new LinkedHashMap();
  map.put(new Float(0), new Float(0));
  map.put(new Float(1), new Float(10));
  map.put(new Float(3), new Float(10));
  map.put(new Float(4), new Float(40));
  map.put(new Float(5), new Float(30));
  
  System.out.println("map "+map);

  TreeMap mapbis = new TreeMap();
  Iterator xi = map.keySet().iterator();
  Iterator yi = map.values().iterator();
  while (xi.hasNext())
   mapbis.put(yi.next(), xi.next());

  System.out.println("mapbis "+mapbis);
}

Note que les doublons ont �t� supprim�s.

> Dans le m�me ordre d'id�e, je souhaiterais pouvoir
> retrouver l'ordre dans lequel les paires d'objets ont
> �t� ajout�es dans la map.

Par d�faut ils sont dans l'ordre dans lequel ils ont �t� ajout�.
Sauf, s'ils ont �t� tri�s, et l� je ne vois pas comment retrouver cet ordre.

R�mi


Répondre à