Problema com PriorytyQueue

2 respostas
T

Blza, galera!

O que aconteceu:

Tenho um objeto que precisa ser ordenado assim que for inserido em uma lista. Pensei em PriorytyQueue implementei a interface Comparable e… Deu um pau do ca#*@!

Ai coloquei em um ArrayList chamei o método Collections.sort() e funfou normal tudo tranquilo.

Testei com a interface Comparator utilizando a classe PriorytyQueue e rodou.

Minha dúvida:

Alguém poderia me explicar o que aconteceu aconteceu com a classe PriorytyQueue para ela dar problema com a interface Comparable e não com a Comparator?

Bom o corpo dos métodos compare, da Comparator, e compareTo, da Comparable, da minha classe que os implementa são iguais. E só uso uma coisa eu implementei uma interface de cada vez e não uso as duas, uso só a Comparator, que foi a que funcionou.

Vlw… Att…

2 Respostas

T

Corrigindo não é PriorytyQueue é PriorityQueue

Vlw… Att…

T

Se você quiser manter uma lista ordenada e não admitir duplicatas, então pode usar um TreeSet, não uma PriorityQueue. De qualquer maneira, uma PriorityQueue não deve ser percorrida com o seu iterador padrão se você quiser a ordem crescente; você tem de remover progressivamente os elementos da PriorityQueue para obter os elementos ordenados.

Criado 2 de junho de 2009
Ultima resposta 2 de jun. de 2009
Respostas 2
Participantes 2