Bonjour,
j'ai un problème de cast et je ne sais pas comment le résoudre, le problème se déclenche quand j'essai d'instancier un objet, voici le code :
1 2 3 4 5 6 7 8 9 10
| public class MaxPriorityQueue<Key extends Comparable<Key>>{
private Key[] list;
private int nbrItems = 0;
public MaxPriorityQueue(){
list = (Key[]) new Object[2];
}
} |
la ligne d'instanciation d'un objet de cette classe :
MaxPriorityQueue<String> mPQ = new MaxPriorityQueue<String>();
Le problème se situe ici :
list = (Key[]) new Object[2];
Et voici l'erreur que j'obtient :
1 2 3
| Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.Comparable;
at MaxPriorityQueue.<init>(MaxPriorityQueue.java:12)
at launcher.main(launcher.java:14) |
Merci d'avance
Partager