ChronoZonedDateTime con el método (TemporalAdjuster) en Java con ejemplos

El método with(TemporalAdjuster ajustador) de la interfaz ChronoZonedDateTime se usa para ajustar esta fecha y hora usando TemporalAdjuster y después del ajuste devuelve la copia de la fecha y hora ajustada. El ajuste se lleva a cabo utilizando el objeto de estrategia de ajustador especificado. Esta instancia de ChronoZonedDateTime es inmutable y no se ve afectada por esta llamada de método. Un ajustador simple usa para establecer uno de los campos, como el campo del año donde un ajustador más complejo podría establecer la hora hasta el último día del año.

Sintaxis:

default ChronoZonedDateTime with(TemporalAdjuster adjuster)

Parámetros: Este método acepta ajustador como parámetro que es el ajustador a utilizar.

Valor devuelto: este método devuelve un ChronoZonedDateTime basado en esto con el ajuste realizado.

Excepción: este método arroja las siguientes excepciones:

  • DateTimeException : si no se puede realizar el ajuste.
  • ArithmeticException : si se produce un desbordamiento numérico.

Los siguientes programas ilustran el método with():

Programa 1:

// Java program to demonstrate
// ChronoZonedDateTime.with() method
  
import java.time.*;
import java.time.chrono.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create ChronoZonedDateTime object
        ChronoZonedDateTime time
            = ZonedDateTime
                  .parse(
                      "1918-10-25T23:12:38.543+02:00[Europe/Paris]");
  
        // print instance
        System.out.println("ChronoZonedDateTime before"
                           + " adjustment: "
                           + time);
  
        // apply with method of ChronoZonedDateTime
        ChronoZonedDateTime updatedlocal
            = time.with(Month.OCTOBER)
                  .with(TemporalAdjusters
                            .firstDayOfMonth());
  
        // print instance
        System.out.println("ChronoZonedDateTime after"
                           + " adjustment: "
                           + updatedlocal);
    }
}
Producción:

ChronoZonedDateTime before adjustment: 1918-10-25T23:12:38.543Z[Europe/Paris]
ChronoZonedDateTime after adjustment: 1918-10-01T23:12:38.543+01:00[Europe/Paris]

Programa 2:

// Java program to demonstrate
// ChronoZonedDateTime.with() method
  
import java.time.*;
import java.time.chrono.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create ChronoZonedDateTime object
        ChronoZonedDateTime time
            = ZonedDateTime
                  .parse(
                      "2018-12-06T19:21:12.123+05:30[Asia/Calcutta]");
  
        // print instance
        System.out.println("ChronoZonedDateTime before"
                           + " adjustment: "
                           + time);
  
        // apply with method of ChronoZonedDateTime
        ChronoZonedDateTime updatedlocal
            = time.with(Month.JANUARY)
                  .with(TemporalAdjusters
                            .firstDayOfMonth());
  
        // print instance
        System.out.println("ChronoZonedDateTime after"
                           + " adjustment: "
                           + updatedlocal);
    }
}
Producción:

ChronoZonedDateTime before adjustment: 2018-12-06T19:21:12.123+05:30[Asia/Calcutta]
ChronoZonedDateTime after adjustment: 2018-01-01T19:21:12.123+05:30[Asia/Calcutta]

Referencia: https://docs.oracle.com/javase/9/docs/api/java/time/chrono/ChronoZonedDateTime.html#with-java.time.temporal.TemporalAdjuster-

Publicación traducida automáticamente

Artículo escrito por ShubhamMaurya3 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 *