Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Sugerencia] Enum

Hola buen día, el resultado para mí esta mal, deberia ser asi. Posee un 'get' y no un 'Set' dado a que es un Enum y no se puede modificar su estado:

public enum Nivel {
    INICIANTE(1), 
    INTERMEDIO(2), 
    AVANZADO(3);
    
    private int puntuacion;

    Nivel(int puntuacion) {
        this.puntuacion = puntuacion;
    }

    public int getPuntuacion() {
        return puntuacion;
    }
}
1 respuesta

¡Hola Christian, espero que estés bien!

Entiendo tu confusión. En el caso de un Enum, como en tu ejemplo, es correcto utilizar un método get para obtener el valor de un atributo, ya que los Enums representan constantes y no deberían ser modificados una vez que se han definido.

Por lo tanto, la opción correcta para implementar este Enum con los atributos que admitan esta funcionalidad sería la opción A:

public enum Nivel {
    Iniciante(1), 
    Intermedio(2), 
    Avanzado(3);
    
    private int puntuacion;
    Nivel(int puntuacion) {
        this.puntuacion = puntuacion;
    }
}

Esta implementación permite asociar una puntuación para cada nivel a través del constructor y luego obtener esa puntuación a través del método getPuntuacion.

Espero que esta explicación te ayude a comprender mejor cómo implementar Enums con atributos en Java. ¡Sigue adelante con tu aprendizaje!

Espero haber ayudado y buenos estudios!