Hola Gerardo, espero que estés bien
¡Espero que estés bien! He echado un vistazo a tu código y parece que estás trabajando en un sistema de verificación de contraseñas. Tu implementación es bastante buena, pero hay un pequeño detalle que podrías ajustar para mejorar el funcionamiento.
En tu clase Password
, estás utilizando un bucle while
para solicitar la contraseña hasta que el usuario la ingrese correctamente o se agoten los intentos. Sin embargo, hay un pequeño problema: la variable intento
no está inicializada antes de entrar en el bucle, lo que podría causar un comportamiento inesperado.
Para solucionar esto, te sugiero que inicialices la variable intento
con un valor vacío antes del bucle while
. Aquí te dejo un ejemplo de cómo podrías hacerlo:
public void enterPassword() {
intento = ""; // Inicializar la variable intento
while (!this.password.equals(intento)) {
System.out.println("Enter the password");
intento = scanner.next();
if (this.password.equals(intento)) {
System.out.println("Access allowed");
break;
} else if (intentos == 0) {
System.out.println("Access blocked. Contact IT.");
break;
} else {
System.out.println("Access denied. Try again.");
intentos--;
}
}
}
Con este cambio, te aseguras de que la variable intento
tenga un valor inicial antes de comenzar el bucle. Esto debería ayudar a que tu programa funcione de manera más predecible.
Espero que esta sugerencia te sea útil y que puedas continuar avanzando en tu proyecto. ¡Sigue con el buen trabajo!
Espero haber ayudado y buenos estudios!