Bonjour à tous,
Afin d'améliorer mes compétences, je fais quelques exercices trouvés à droite et à gauche sur le net.
L'exercice que je suis en train de traiter est la répartition du nombre de siéges lors d'une élection (exercice récupéré sur ce site). Pour cela le programme demande à l'utilisateur d'entrer le nombre de siéges disponibles, le nombre de listes électorales et pour chaque liste son nom et nombre de voix.
J'ai donc créé en plus de la classe principale, une class ListeElectorale ayant pour attributs un nom (nom), un nombre de sièges (nbrSieges) et un nombre de voix (nbrVoix). Le nom et le nombre de voix sont définit lors de l'instanciation(ça existe vraiment ça?) de l'objet.
POur cela je passe par une classe CollectionDeListe qui hérite de l'objet Hashtable.
Sa déclaration est pour l'instant toute simple puisque qu'elle ne redéfinie aucune méthode.
Afin de remplir cette CollectionDeListe, j'ai procédé ainsi :
Le probléme est que je n'arrive pas à récuperer les objets situés dans la table de hashage.
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 System.out.println("Veuillez entrer le nombre de listes électorales"); nbrListes = Integer.parseInt(sc.nextLine()); System.out.println("Veuillez entrer le nombre de siéges disponibes"); nbrSieges = Integer.parseInt(sc.nextLine()); //récupération des infos des différentes listes for (int i=0;i<=nbrListes;i++){ System.out.println("Veuillez entrer le nom liste" + i); nom = sc.nextLine(); System.out.println("Veuillez entrer le nombre de voix de la liste" + i); nbVoix = Integer.parseInt(sc.nextLine()); nbrSuffragesTotal += nbVoix; collecListes.put(new ListeElectorale(nom,nbVoix)); }
Morsque je fais un
liste = collecListes.get(i); ou liste un objet de type ListeElectorale, Eclipse me notifie que Type mismatch: cannot convert from Object to ListeElectorale.
Or si je fais un
c'est bien la classe ListeElectorale qui est retournée...
Code : Sélectionner tout - Visualiser dans une fenêtre à part System.out.println(collecListes.get(i).getClass());
Quelqu'un pourrait m'expliquer pourquoi cette erreur et comment la corriger?
Merci.
Partager