J'ai ce problème que j'avais utilisé Arraylist dans tout mon programme jusqu'à présent et maintenant j'ai besoin que son fonctionnement soit aussi celui de la file d'attente prioritaire.ArrayList cast à PriorityQueue + java
Alors j'ai fait l'évidence qui me semblait et je l'ai casté comme PriorityQueue z = (PriorityQueue) x
où x était arraylist.
Lors de l'exécution, cela a donné une erreur indiquant que cela n'était pas possible.
Existe-t-il un moyen simple de faire ce travail. Je ne peux pas changer toute la liste de tableaux en tant que file d'attente prioritaire puisque je devrai mettre à jour toutes les fonctions utilisées .....
Dois-je ajouter chaque fois un article d'arraylist à une nouvelle file d'attente prioritaire ou y at-il un meilleure méthode ...
Merci beaucoup ...
Pourquoi suis-je obtenir l'erreur que «Vertex ne peut pas être jeté à java.lang.Comparable» où x est Liste de Vertex –
@Chimmy toujours obtenir la même erreur .... –
@ user506710 Vous essayez de faire une priorité file d'attente des éléments qui ne sont pas implémentés comparables. Edit: En d'autres termes, Java n'a aucun moyen de dire quel Vertex est plus petit ou plus grand qu'un autre, car il n'implémente pas l'interface Comparable. Pour plus de détails, regardez ici: http://download.oracle.com/javase/1.4.2/docs/api/java/lang/Comparable.html – Chimmy