Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

[Sugerencia] Método más simplificado

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

2 respuestas
solución!

Hola Yahadad, espero que estés bien

¡Gracias por compartir tu sugerencia! Tienes razón al proponer el uso de Integer.compare para simplificar el método compareTo. Tu versión del método no solo es más concisa, sino que también maneja de manera más segura los posibles desbordamientos que podrían ocurrir con tipos de datos primitivos más grandes, como int o long.

Aquí está tu versión del método para referencia:

@Override
public int compareTo(Cuenta otraCuenta) {
    return Integer.compare(otraCuenta.getSaldo(), this.getSaldo());
}

Esta implementación es clara y directa, y sigue la lógica de ordenar los saldos en orden descendente, que es lo que se busca en el ejercicio. Además, al usar Integer.compare, se asegura de que el método sea robusto y eficiente.

Espero que esta explicación te sea útil y te ayude a entender por qué tu sugerencia es una buena práctica. ¡Bons estudios!

Gracias por tomar en consideración mi sugerencia, ingeniera Brenda.