Рубрики

Часы Java с методом Zone () в Java с примерами

Метод java.time.Clock.withZone (ZoneId zone) — это метод класса Clock, который возвращает копию часов объекта Clock, к которому применяется этот метод, с другим часовым поясом. Если есть часы и требуется изменить зону часов, но не другие свойства, тогда используется метод withZone (). Этот метод принимает зону в качестве параметра, который является часовым поясом, в котором его необходимо изменить. Возвращает часы с зоной, такие же, как переданная зона в параметре.

Синтаксис:

public abstract Clock withZone(ZoneId zone)

Параметр: Этот метод принимает обязательную зону параметров типа ZoneId, в которой требуется изменить часовой пояс.

Возвращает: Этот метод возвращает копию часов объекта часов, к которому применяется этот метод, с другим часовым поясом, переданным в качестве параметра.

Пример:

Code:
//Clock with default zone
Clock clock1=Clock.systemUTC();
ZoneId zone = ZoneId.of("Asia/Calcutta");
Clock clock2 = clock1.withZone(zone);
System.out.println(clock2.toString());

Output:: 
SystemClock[Asia/Calcutta]

Explanation:: 
when withZone() is called for Clock object clock1 with zoneId "Asia/Calcutta",
then the withZone() method will return a Clock whose Zone is "Asia/Calcutta".

Ниже программы иллюстрируют метод withZone () класса java.time.Clock:

Программа 1: Создать часы с такими же свойствами, как у First Clock, но zoneId, равным «Asia / Calcutta», с помощью withZone ().

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

  

import java.time.*;

  
// создать класс

public class withZoneMethodDemo {

  

    // Основной метод

    public static void main(String[] args)

    {

        // создаем базовые часы методом systemUTC ()

        Clock baseclock = Clock.systemUTC();

  

        // получаем объект ZonedDateTime из baseclock

        // часы, чтобы получить время даты

        ZonedDateTime baseTime = baseclock

                                     .instant()

                                     .atZone(baseclock.getZone());

  

        // распечатать детали ZonedDateTime

        System.out.println("ZonedDateTime of baseclock "

                           + baseTime.toString());

  

        // создаем объект ZoneId с помощью Zone Asia / Calcutta

        ZoneId zone = ZoneId.of("Asia/Calcutta");

  

        // применить withZone (), чтобы изменить зону с utc на Азию / Калькутту

        Clock clockWithOtherZone = baseclock.withZone(zone);

  

        // получаем объект ZonedDateTime из clockWithOtherZone

        // часы, чтобы получить время даты

        ZonedDateTime calcuttaTime = clockWithOtherZone

                                         .instant()

                                         .atZone(clockWithOtherZone.getZone());

  

        // распечатать детали ZonedDateTime

        System.out.println("ZonedDateTime of clockWithOtherZone "

                           + calcuttaTime.toString());

    }

}

Выход:

ZonedDateTime of baseclock 2018-08-24T08:09:17.354Z
ZonedDateTime of clockWithOtherZone 2018-08-24T13:39:17.539+05:30[Asia/Calcutta]

Программа 2: Напечатайте zoneId с помощью getZone () для часов, созданных с помощью Zone ().

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

  

import java.time.*;

  
// создать класс

public class withZoneMethodDemo {

  

    // Основной метод

    public static void main(String[] args)

    {

        // создаем базовые часы с помощью метода systemDefaultZone ()

        Clock baseclock = Clock.systemDefaultZone();

  

        // распечатать детали ZonedDateTime

        System.out.println("baseclock Zone:"

                           + baseclock.getZone());

  

        // создаем объект ZoneId с помощью Zone Asia / Calcutta

        ZoneId zone = ZoneId.of("Asia/Calcutta");

  

        // применить withZone () для изменения зоны

        // базовых часов в Азию / Калькутту

        Clock clockWithOtherZone = baseclock.withZone(zone);

  

        // распечатать детали ZonedDateTime

        System.out.println("clockWithOtherZone Zone:"

                           + clockWithOtherZone.getZone());

    }

}

Выход:

baseclock Zone:Etc/UTC
clockWithOtherZone Zone:Asia/Calcutta

Ссылка:
https://docs.oracle.com/javase/8/docs/api/java/time/Clock.html#withZone-java.time.ZoneId-

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

Часы Java с методом Zone () в Java с примерами

0.00 (0%) 0 votes