Introducción
En este laboratorio, aprenderemos a usar el método withDayOfYear()
de la clase LocalDate
de Java para crear una fecha con un nuevo valor de día del año.
💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí
En este laboratorio, aprenderemos a usar el método withDayOfYear()
de la clase LocalDate
de Java para crear una fecha con un nuevo valor de día del año.
Crea un archivo LocalDateWithDayOfYear.java
en el directorio ~/project
con el siguiente código:
import java.time.LocalDate;
public class LocalDateWithDayOfYear {
public static void main(String[] args) {
System.out.println("Fecha original: ");
LocalDate localDate = LocalDate.of(2002, 01, 10);
System.out.println(localDate);
}
}
Utiliza el siguiente comando para compilar y ejecutar el código:
javac LocalDateWithDayOfYear.java && java LocalDateWithDayOfYear
La salida debe mostrar la fecha original:
Fecha original:
2002-01-10
Para crear una nueva fecha estableciendo un nuevo valor de día del año, podemos usar el método withDayOfYear()
para establecer un nuevo día para la fecha.
Agrega el siguiente código después de la línea System.out.println(localDate);
:
// establece el día del año como 30
localDate = localDate.withDayOfYear(30);
System.out.println("Nueva fecha con el día del año establecido como 30: ");
System.out.println(localDate);
// establece el día del año como 300
localDate = localDate.withDayOfYear(300);
System.out.println("Nueva fecha con el día del año establecido como 300: ");
System.out.println(localDate);
Utiliza el siguiente comando para compilar y ejecutar el código:
javac LocalDateWithDayOfYear.java && java LocalDateWithDayOfYear
La salida debe mostrar las nuevas fechas con los nuevos valores de día del año:
Fecha original:
2002-01-10
Nueva fecha con el día del año establecido como 30:
2002-01-30
Nueva fecha con el día del año establecido como 300:
2002-10-27
Si la fecha resultante es inválida, se lanzará una excepción. Podemos manejar la excepción utilizando un bloque try-catch de la siguiente manera:
try {
// establece el día del año como 366 (inválido para un año no bisiesto)
localDate = localDate.withDayOfYear(366);
System.out.println(localDate);
} catch (Exception e) {
System.out.println("Fecha inválida: " + e.getMessage());
}
Utiliza el siguiente comando para compilar y ejecutar el código:
javac LocalDateWithDayOfYear.java && java LocalDateWithDayOfYear
La salida debe mostrar el mensaje de excepción de fecha inválida:
Fecha original:
2002-01-10
Nueva fecha con el día del año establecido como 30:
2002-01-30
Nueva fecha con el día del año establecido como 300:
2002-10-27
Fecha inválida: Fecha inválida 'DayOfYear 366' ya que '2002' no es un año bisiesto
En este laboratorio, hemos aprendido cómo usar el método withDayOfYear()
de la clase LocalDate
de Java para crear una fecha con un nuevo valor de día del año. También hemos aprendido cómo manejar la excepción de fecha inválida al establecer un nuevo valor de día del año.