Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Ordenação usando o Comparator

Ao invés de usar a interface Comparable na Classe Compra, implementando o método compareTo(), eu fiz na Classe Principal:

cartao.getCompras().sort(Comparator.comparingDouble(Compra::getValor));

Está correto dessa forma né?! Agradeço, desde já.

1 resposta
solução!

Olá, Raquel!

Sim, está absolutamente correto! A abordagem que você usou é uma alternativa ao uso da interface Comparable, e é uma maneira muito eficaz de ordenar listas.

A interface Comparator é muito útil quando você quer controlar a ordem de classificação e ela não é a ordem natural dos elementos. No seu caso, você usou o método estático comparingDouble da interface Comparator para comparar os valores das compras. Este método retorna um Comparator que compara dois objetos do tipo Compra pelo valor de suas compras em ordem crescente.

Muito legal. Parabéns :)

Espero ter ajudado e bons estudos!