Encuentra el día de la semana usando la clase SimpleDateFormat en Java

Dado el día, mes y año, la tarea es encontrar el día de la semana correspondiente usando la clase SimpleDateFormat en Java.

Ejemplos

Entrada: 11-08-2020

Salida: Martes

Explicación: El día correspondiente a la fecha 11-08-2020 es martes.

Entrada: 17-08-2006

Salida: jueves

Explicación: El día correspondiente a la fecha 17-08-2006 es jueves.

Acercarse: 

  • Ingrese la fecha, el mes y el año del usuario como tipo entero.
  • Compruebe si la fecha, el mes y el año están en el rango requerido. Si no es así, genera un mensaje de error.
  • Convierta la entrada en tipo de fecha utilizando la clase SimpleDateFormat .
  • Formatee la fecha al día correspondiente de la semana usando la clase SimpleDateFormat.
  • Imprime el día de la semana correspondiente.

Nota: si desea el nombre completo del día (por ejemplo: domingo, lunes), use «EEEE». Si desea la versión más corta del nombre del día (por ejemplo, Sun, Mon), use «EE».

A continuación se muestra la implementación del enfoque anterior:

Java

// Java program for the above approach
import java.util.Date;
import java.text.SimpleDateFormat;
import java.text.ParseException;
  
public class GFG {
  
    public void findDay(int day, int month, int year)
    {
        String dayOfWeek = "";
        boolean wrongDate = false;
  
        if (day < 1 || day > 31) {
            dayOfWeek += "Give day in range. ";
            wrongDate = true;
        }
  
        if (month < 1 || month > 12) {
            dayOfWeek += "Give month in range. ";
            wrongDate = true;
        }
  
        if (year <= 0) {
            wrongDate = true;
            dayOfWeek += "Give year in range.";
        }
  
        if (!wrongDate) {
  
            SimpleDateFormat dateFormatter
                = new SimpleDateFormat("dd-MM-yyyy");
            String dateString
                = day + "-" + month + "-" + year;
  
            try {
                // Parse the String representation of date
                // to Date
                Date date = dateFormatter.parse(dateString);
                dayOfWeek
                    = "Day of week on " + dateString + " : "
                      + new SimpleDateFormat("EEEE").format(
                            date);
            }
            catch (ParseException e) {
                e.printStackTrace();
            }
        }
  
        System.out.println(dayOfWeek);
    }
  
    // Driver Code  
    public static void main(String arg[])
    {
  
        GFG gfg = new GFG();
        gfg.findDay(17, 8, 2006);
    }
}
Producción

Day of week on 17-8-2006 : Thursday

Publicación traducida automáticamente

Artículo escrito por SAKSHIKULSHRESHTHA y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *