Yo hice el desafio un poco diferente pero siguiendo la misma logica.
CLASS COMPRAS:
CLASS TarjetaCredito
Aca utilice el comparador de la siguiente manera:
public void mostrarCompras() { Collections.sort(compras, (c1, c2) -> Double.compare(c2.getValor(), c1.getValor())); for (Compra compra : compras) { System.out.println(compra); }
CLASS PrincipalConListas!
Apliqué el metodo while-switch-case para el Menú, y dejé fijo el valor del limite de la tarjeta de credito, sin posibilidad de modoficarlo, pensando en la seguridad.