El método adjustInto() de la interfaz ChronoLocalDateTime en Java se usa para ajustar el objeto temporal especificado para que tenga la misma fecha que este objeto.
Sintaxis :
default Temporal adjustInto(Temporal temporal)
Parámetro : este método acepta un solo parámetro temporal que es el objeto de destino que se va a ajustar, y no específicamente nulo.
Valor devuelto : Devuelve el objeto ajustado, no nulo.
Excepciones : la función lanza dos excepciones como se describe a continuación:
- DateTimeException : el programa lanza esto si no puede hacer el ajuste.
- ArithmeticException : el programa lanza esto si hay un desbordamiento numérico.
Los siguientes programas ilustran el método de ajuste en() de ChronoLocalDateTime en Java:
Programa 1 :
// Program to illustrate the adjustInto() method import java.util.*; import java.time.*; import java.time.chrono.*; public class GfG { public static void main(String[] args) { LocalDateTime date = LocalDateTime .parse("2018-12-06T19:21:12"); // prints the date System.out.println(date); // Parses the date ChronoLocalDateTime date1 = LocalDateTime.now(); // Uses the function to adjust the date date = (LocalDateTime)date1.adjustInto(date); // Prints the adjusted date System.out.println(date); } }
Producción:
2018-12-06T19:21:12 2019-05-14T09:39:37.953
Programa 2 : Para ilustrar Excepción. El siguiente programa arroja una excepción ya que febrero es de 28 días y no de 31 días.
// Program to illustrate the adjustInto() method // Exception Program import java.util.*; import java.time.*; import java.time.chrono.*; public class GfG { public static void main(String[] args) { try { LocalDateTime date = LocalDateTime .parse("2018-12-06T19:21:12"); // prints the date System.out.println(date); // Parses the date ChronoLocalDateTime date1 = LocalDateTime.parse("2015-02-31"); // Uses the function to adjust the date date = (LocalDateTime)date1.adjustInto(date); // Prints the adjusted date System.out.println(date); } catch (Exception e) { System.out.println(e); } } }
Producción:
2018-12-06T19:21:12 java.time.format.DateTimeParseException: Text '2015-02-31' could not be parsed at index 10