Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Collections.sort

Ola pessoal, tudo bem ?

Pelos exemplos apresentados a lista de palavras o java consegue ordenar normalmente utilizando Collections.sort(palavras); Se eu tivesse uma lista de alunos, por qual motivo nao posso fazer o mesmo procedimento?

Sem utilizar um comparador: Comparator comparator = Comparator.comparing(u -> u.getNome());

Ex:

Public class Usuario{
    private String nome;

    public String getNome() {
        return nome;
    }
    public Usuario(String nome) {
        super();
        this.nome = nome;
    }
}
public class TesteMain {
    public static void main(String[] args) {

        Aluno a1 = new Aluno("Paulo Silveira");
        Aluno a2 = new Aluno("Julio Cesar");
        Aluno a3 = new Aluno("Guilherme Silveira");

        List<Aluno> alunos = new ArrayList<Aluno>();
        alunos.add(a1);
        alunos.add(a2);
        alunos.add(a3);

        Collections.sort(alunos) <- Neste trecho da erro.
2 respostas
solução!

Pq ele não sabe qual seria o critério de ordenação.. De todo jeito, falando tecnicamente, a classe String já implementa a interface Comparable. Se sua classe Aluno implementar também, esse código vai compilar.. Essa interface define um critério padrão de ordenação para seus objetos.

Alberto, é viavel utilizar esta implementacao em alguma aplicacao, criar um metodo comparador? Ou nao usa-lo por conta do consumo de memoria que pode acarretar este procedimento,