Рубрики

ChronoZonedDateTime withEarlierOffsetAtOverlap () в Java с примерами

Метод withEarlierOffsetAtOverlap () интерфейса ChronoZonedDateTime используется для возврата копии этого объекта ChronoZonedDateTime после изменения смещения зоны на более раннее из двух допустимых смещений при перекрытии локальной временной шкалы. Перекрытие происходит, когда летнее время заканчивается и один час возвращается на временную шкалу. Из-за этого существует два допустимых смещения для локальной даты и времени, и вызов метода withEarlierOffsetAtOverlap вернет ChronoZonedDateTime с более ранней из двух зон. Если этот метод вызывается, когда он не перекрывается, он возвращается. Этот экземпляр является неизменным и незатронутым этим вызовом метода.

Синтаксис:

ChronoZonedDateTime withEarlierOffsetAtOverlap()

Параметры: Этот метод не принимает параметров.

Возвращаемое значение: этот метод возвращает ChronoZonedDateTime на основе этой даты-времени с более ранним смещением.

Ниже программы иллюстрируют метод withEarlierOffsetAtOverlap ():

Программа 1:

// Java-программа для демонстрации
// withEarlierOffsetAtOverlap () метод

  

import java.time.*;

import java.time.chrono.*;

  

public class GFG {

    public static void main(String[] args)

    {

  

        // создаем объект ChronoZonedDateTime

        ChronoZonedDateTime zonedDT

            = ZonedDateTime

                  .ofLocal(

                      LocalDateTime.of(2018, 11, 4, 1, 25, 43),

                      ZoneId.of("US/Central"),

                      ZoneOffset.ofHours(-6));

  

        // распечатать ChronoZonedDateTime

        System.out.println("Before"

                           + " withEarlierOffsetAtOverlap():\n "

                           + zonedDT);

  

        // применять сEarlierOffsetAtOverlap ()

        ChronoZonedDateTime zonedDT2

            = zonedDT.withEarlierOffsetAtOverlap();

  

        // выводим ChronoZonedDateTime после

        // withEarlierOffsetAtOverlap ()

        System.out.println("\nAfter"

                           + " withEarlierOffsetAtOverlap():\n "

                           + zonedDT2);

    }

}

Выход:

Before withEarlierOffsetAtOverlap():
 2018-11-04T01:25:43-06:00[US/Central]

After withEarlierOffsetAtOverlap():
 2018-11-04T01:25:43-05:00[US/Central]

Программа 2:

// Java-программа для демонстрации
// withEarlierOffsetAtOverlap () метод

  

import java.time.*;

import java.time.chrono.*;

  

public class GFG {

    public static void main(String[] args)

    {

  

        // создаем объект ChronoZonedDateTime

        ChronoZonedDateTime zonedDT

            = ZonedDateTime

                  .ofLocal(

                      LocalDateTime.of(2021, 11, 07, 1, 05, 53),

                      ZoneId.of("US/Central"),

                      ZoneOffset.ofHours(-6));

  

        // распечатать ChronoZonedDateTime

        System.out.println("Before"

                           + " withEarlierOffsetAtOverlap():\n "

                           + zonedDT);

  

        // применять сEarlierOffsetAtOverlap ()

        ChronoZonedDateTime zonedDT2

            = zonedDT.withEarlierOffsetAtOverlap();

  

        // выводим ChronoZonedDateTime после

        // withEarlierOffsetAtOverlap ()

        System.out.println("\nAfter"

                           + " withEarlierOffsetAtOverlap():\n "

                           + zonedDT2);

    }

}

Выход:

Before withEarlierOffsetAtOverlap():
 2021-11-07T01:05:53-06:00[US/Central]

After withEarlierOffsetAtOverlap():
 2021-11-07T01:05:53-05:00[US/Central]

Ссылка: https://docs.oracle.com/javase/9/docs/api/java/time/chrono/ChronoZonedDateTime.html#withEarlierOffsetAtOverlap–

Рекомендуемые посты:

ChronoZonedDateTime withEarlierOffsetAtOverlap () в Java с примерами

0.00 (0%) 0 votes