1
resposta

É possivel utilizar o Collections.sort com 2 parâmetros?

Como eu consigo fazer esse tipo de ordeção: Collections.sort(aulas, Comparator.comparing(Aula::getTempo, Aula::getTitulo()));

Eu quero comprar por tempo, caso tenha algum tempo igual, quero comprar pelo Titulo. É possivel?

1 resposta

Oi Vinicius, tudo bem?

Eu não sou nenhum expert em Collections, mas exite sim uma forma de fazer isso através do "Comparator.thenComparing", perceba que o nome é bem parecido com o "Comparator.comparing", com a diferença que agora podemos passar 2 parâmetros, então fazemos a comparação por tempo e, caso tenha tempos iguais, comparamos os títulos também:

Comparator.comparing(Aula::getTempo).thenComparingInt(Aula::getTitulo);

Vou deixar a documentação do Comparator aqui, onde podemos encontrar mais informações sobre os métodos e suas variações! ;-)

Espero ter ajudado, qualquer dúvida estamos à sua disposição!

Bons estudos!!