¡Hola María, espero que estés bien!
Tu código está casi perfecto para resolver el problema de verificar si un día es hábil o no. Sin embargo, hay un pequeño detalle en la función capitalize
que podría causar un comportamiento inesperado.
Actualmente, estás usando str.replace()
que reemplaza todas las ocurrencias del primer carácter en la cadena. Esto no es necesario ya que solo necesitas cambiar la primera letra a mayúscula.
Una forma más segura de hacerlo es concatenar directamente la primera letra en mayúscula con el resto de la cadena.
Aquí te dejo una versión corregida de la función capitalize
:
private static String capitalize(String str) {
String strUpper = str.substring(0, 1).toUpperCase();
return strUpper + str.substring(1);
}
Con esta modificación, tu programa debería funcionar correctamente y capitalizar solo la primera letra del día ingresado. Así, cuando el usuario ingrese "miércoles", el programa responderá con "Miércoles es un día hábil." tal como se espera.
Espero que esto te ayude y que tu programa funcione como deseas. ¡Bons estudios!