En lugar de tener:
@Override
public int compareTo(Cuenta otra) {
if (this.saldo < otra.saldo) {
return 1;
} else if (this.saldo > otra.saldo) {
return -1;
} else {
return 0;
}
}
Considero que es mejor esta opción:
@Override
public int compareTo(Cuenta otraCuenta) {
return Integer.compare(otraCuenta.getSaldo(), this.getSaldo());
}
Ya que evita desbordamientos