Como o Compare consegue classificar mais de uma referência | Java parte 6: Conhecendo o java.util | Alura - Cursos online de tecnologia
Como o Compare consegue classificar mais de uma referência
Referente ao curso Java parte 6: Conhecendo o java.util, no capítulo Ordenação de listas e atividade Comparando Strings
public int compare(Conta c1, Conta c2) {
String nomeC2 = c2.getTitular().getNome();
Na minha classe main instanciei quatro objetos, e na Classe compare passei apenas o C1 e o C2. Como o compare consegue pegar todas minhas referências e ordenar por ordem alfabético, sendo que eu informei apenas a referência c1 2 c2.
(1516.1k xp, 2824 posts)
O segredo dessa ordenação está nessa linha:
lista.sort(comparator);
Para cada elemento da lista será executado o objeto informado como argumento (que no caso é objeto "comparator") para classificar se o elemento atual vem antes ou depois do próximo elemento. Na prática, o método .sort já está implementado na linguagem Java. Ou seja, o que a gente precisa desenvolver é uma classe que implemente (explicitamente ou implicitamente) a interface Comparator que o método .sort espera :)
Dica: prossiga com os estudos que com o tempo tudo vai fazer sentido. Quando você chegar nesse curso: https://cursos.alura.com.br/course/java8-lambdas vai ter uma visão de como funciona esse método sort e vai entender mais sobre as interfaces funcionais do Java 8 :)