Oi pessoal.
Estou tentando ordenar uma listinha que uso numa aplicação Web mas estou esquecendo algum detalhe.
O código é mais ou menos o seguinte.
[code]
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class sorteando {
public static void main(String[] args) {
List<SelectItem<EntidadeQualquer>> lista = new ArrayList<SelectItem<EntidadeQualquer>>();
lista.add(new SelectItem(2));
lista.add(new SelectItem(3));
lista.add(new SelectItem(1));
Collections.sort(lista);
System.out.println(lista);
}
}
class SelectItem{
private int value = 0;
public SelectItem(int value) {
this.value = value;
}
@Override
public String toString() {
return String.valueOf(this.value);
}
}
class EntidadeQualquer{
}[/code]
Bom, esse código tem um erro de compilação no comando Collections.sort(lista);
O Eclipse me soltou a seguinte mensagem.
[quote]Multiple markers at this line
- Bound mismatch: The generic method sort(List) of type Collections is not applicable for the arguments (List<SelectItem>). The inferred
type SelectItem is not a valid substitute for the bounded parameter <T extends Comparable<? super T>>
O ponto aqui é que é necessário que o SelectItem implemente a interface Comparable. Fico na dúvida de como proceder com a codificação. Não sei se uso generics tipo Comparable.
Estou confuso com essa situação. Alguém tem opinião sobre?
Abraço!