Ola,
Eu nao consegui aplicar este exemplo de metodo compareTo. Alguém poderia forcene-lo a mim de como aplicar no public static void main?
Obrigado
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Ola,
Eu nao consegui aplicar este exemplo de metodo compareTo. Alguém poderia forcene-lo a mim de como aplicar no public static void main?
Obrigado
Oi John, vou colar o código das classes aqui, mas me explica por que você não conseguiu fazer? Alguma dúvida?
Classe Aula:
public class Aula implements Comparable<Aula>{
private String titulo;
private int tempo;
public Aula(String titulo, int tempo) {
this.titulo = titulo;
this.tempo = tempo;
}
public String getTitulo() {
return titulo;
}
public int getTempo() {
return tempo;
}
@Override
public String toString() {
return "{Aula: "+ this.titulo +", Tempo: "+ this.tempo +"}";
}
@Override
public int compareTo(Aula outraAula) {
return this.titulo.compareTo(outraAula.titulo);
}
}Classe que testa Aula:
public class TestandoListaDeAulas {
public static void main(String[] args) {
Aula a1 = new Aula("Revisitando as ArrayLists", 21);
Aula a2 = new Aula("Lista de objetos", 20);
Aula a3 = new Aula("Relacionamento de listas e objetos", 15);
ArrayList<Aula> aulas = new ArrayList<>();
aulas.addAll(Arrays.asList(a1, a2, a3));
System.out.println("Lista em ordem de inserção: ");
System.out.println(aulas);
Collections.sort(aulas);
System.out.println("Lista em ordenada por título (Collections + Comparable): ");
System.out.println(aulas);
System.out.println("Lista em ordenada por tempo (Collections + Comparator): ");
Collections.sort(aulas, Comparator.comparing(Aula::getTempo));
System.out.println(aulas);
System.out.println("Lista em ordenada por tempo (Sort da Lista + Comparator): ");
aulas.sort(Comparator.comparing(Aula::getTempo));
System.out.println(aulas);
}
}
Olá Wanderson!
Eu não havia encontrado o exemplo, aqui nao abriu. Deve ter sido minha internet..
Ficou claro o exemplo! Obrigado
Entendi, qualquer dúvida, pinga a gente aqui no fórum! Bons estudos!