Salut tout le monde je bloque sur les Hash map.

J'ai une classe Mot

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class Mot {
    public String nom;
 
    /** Creates a new instance of Mot */
    public Mot(String nom) {
        this.nom=nom;
    }
    public String toString(){
        return nom;
    }
    public String getNom(){
        return nom;
    }
}
Puis dans le main je crée 3 mots et je crée mon HashMap


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
21
22
23
24
 
    /** Creates a new instance of Main */
    public Main() {
    }
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
    Mot souris = new Mot("souris");
    Mot clavier = new Mot("clavier");
    Mot tour= new Mot("tour");
    Index i = new Index();
    ComparerMot cm = new ComparerMot();
    HashMap<Mot, Integer> mapi = new HashMap<Mot, Integer>();
 
    mapi.put(clavier,2);
    mapi.put(souris,1);
    mapi.put(tour,3);
 
    System.out.println(mapi);
    }
}
Le HashMap d'après ce que j'ai compris tri de manière automatique la clé. Ici la clé est mot mais comment peut-il trier des mots vu qu'il ne sais pas ce que c'est ???
J'ai essayé de mettre la méthode compareTo dans la classe Main en disant bien que la classe Mot implements Comparable mais ça marche pas.
Je séche si vous avez la solution merci.