Método Java LocalDate atStartOfDay con zona horaria

JavaBeginner
Practicar Ahora

Introducción

El método Java atStartOfDay(ZoneId) se utiliza para combinar la hora de inicio (hora medianoche) con la fecha especificada en función de la zona horaria. Este método devuelve una fecha y hora zonificadas en lugar de una fecha y hora locales. En este laboratorio, aprenderá a usar el método atStartOfDay() con la zona horaria en Java.

Crea un archivo Java

En primer lugar, navega hasta el directorio ~/project y crea un nuevo archivo Java llamado LocalDateStartOfDay.java usando el comando siguiente:

cd ~/project
touch LocalDateStartOfDay.java

Luego, abre el archivo LocalDateStartOfDay.java con tu editor de texto favorito.

Importa los paquetes necesarios

En este paso, importaremos los paquetes necesarios para trabajar con las clases LocalDate, Month, ZoneId y ZonedDateTime.

import java.time.LocalDate;
import java.time.Month;
import java.time.ZoneId;
import java.time.ZonedDateTime;

Obtener la fecha y hora zonificadas a partir de una fecha de inicio

En este paso, crearemos un objeto LocalDate con una fecha especificada, luego usaremos el método atStartOfDay() para obtener la fecha y hora zonificadas a partir de esta fecha con una zona horaria específica.

// Obteniendo una fecha
LocalDate localDate = LocalDate.of(2022, Month.APRIL, 15);

// Obteniendo la hora de inicio de la fecha
ZonedDateTime localDateTime = localDate.atStartOfDay(ZoneId.of("Asia/Kolkata"));

// Mostrando la fecha y la hora de inicio de la fecha
System.out.println("Fecha con hora de inicio: \n"+localDateTime);

Obtener la fecha y hora zonificadas a partir de una fecha de inicio con la zona horaria predeterminada del sistema

En este paso, usaremos el método atStartOfDay() con el método ZoneId.systemDefault() para obtener la fecha y hora zonificadas a partir de la fecha especificada con la zona horaria predeterminada del sistema.

// Obteniendo la hora de inicio de la fecha con la zona horaria predeterminada del sistema
ZonedDateTime localDateTime = localDate.atStartOfDay(ZoneId.systemDefault());

// Mostrando la fecha y la hora de inicio de la fecha
System.out.println("Fecha con hora de inicio: \n"+localDateTime);

Compila y ejecuta el programa Java

En este paso, compilaremos y ejecutaremos el programa Java usando el siguiente comando en la terminal:

javac LocalDateStartOfDay.java && java LocalDateStartOfDay

Ver la salida

La salida debe ser la siguiente, mostrándote la fecha con la hora de inicio en la zona horaria especificada.

Date with start time:
2022-04-15T00:00+05:30[Asia/Kolkata]
Date with start time:
2022-04-15T00:00+02:00[Europe/Paris]

Resumen

En este laboratorio, has aprendido cómo usar el método Java atStartOfDay(ZoneId) para combinar la hora de inicio con la fecha especificada en función de la zona horaria y obtener la fecha y hora zonificadas de la fecha especificada con la hora de inicio. También has aprendido cómo obtener la fecha y hora zonificadas de la fecha especificada con la hora de inicio y la zona horaria predeterminada del sistema.