Клас Java ZonedDateTime є незмінним представленням дати й часу з часовим поясом. Він успадковує клас Object і реалізує інтерфейс ChronoZonedDateTime.
Клас ZonedDateTime використовується для зберігання всіх полів дати й часу з точністю до наносекунд, а також часового поясу зі зсувом зони, який використовується для обробки неоднозначних локальних дат і часу.
Оголошення класу Java ZonedDateTime
Давайте подивимося на оголошення класу java.time.ZonedDateTime.
sql порядок за датою
public final class ZonedDateTime extends Object implements Temporal, ChronoZonedDateTime, Serializable
Методи Java ZonedDateTime
метод | опис |
---|---|
Формат рядка (форматувальник DateTimeFormatter) | Він використовується для форматування цієї дати й часу за допомогою вказаного засобу форматування. |
int get(поле TemporalField) | Він використовується для отримання значення вказаного поля з цієї дати-часу як int. |
ZoneId getZone() | Він використовується для визначення часового поясу, наприклад «Азія/Калькутта». |
ZonedDateTime withZoneSameInstant(зона ZoneId) | Він використовується для повернення копії цієї дати й часу з іншим часовим поясом, зберігаючи момент. |
статичний ZonedDateTime зараз() | Він використовується для отримання поточної дати й часу від системного годинника в часовому поясі за замовчуванням. |
статичний ZonedDateTime з (дата LocalDate, час LocalTime, зона ZoneId) | Він використовується для отримання екземпляра ZonedDateTime з локальної дати та часу. |
ZonedDateTime мінус (довгий сумаToSubtract, TemporalUnit одиниця) | Він використовується для повернення копії цієї дати й часу з відніманням вказаної суми. |
ZonedDateTime плюс (довгий сумаToAdd, TemporalUnit одиниця) | Він використовується для повернення копії цієї дати й часу з доданою зазначеною сумою. |
Приклад класу Java ZonedDateTime
import java.time.ZonedDateTime; public class ZonedDateTimeExample1{ public static void main(String[] args) { ZonedDateTime zone = ZonedDateTime.parse('2016-10-05T08:20:10+05:30[Asia/Kolkata]'); System.out.println(zone); } }Перевірте зараз
Вихід:
2016-10-05T08:20:10+05:30[Asia/Kolkata]
Клас Java ZonedDateTime Приклад: of() і withZoneSameInstant()
import java.time.*; public class ZonedDateTimeExample2{ public static void main(String[] args) { LocalDateTime ldt = LocalDateTime.of(2017, Month.JANUARY, 19, 15, 26); ZoneId india = ZoneId.of('Asia/Kolkata'); ZonedDateTime zone1 = ZonedDateTime.of(ldt, india); System.out.println('In India Central Time Zone: ' + zone1); ZoneId tokyo = ZoneId.of('Asia/Tokyo'); ZonedDateTime zone2 = zone1.withZoneSameInstant(tokyo); System.out.println('In Tokyo Central Time Zone:' + zone2); } }Перевірте зараз
Вихід:
глобальні змінні js
In India Central Time Zone: 2017-01-19T15:26+05:30[Asia/Kolkata] In Tokyo Central Time Zone:2017-01-19T18:56+09:00[Asia/Tokyo]
Приклад класу Java ZonedDateTime: getZone()
import java.time.ZonedDateTime; public class ZonedDateTimeExample3{ public static void main(String[] args) { ZonedDateTime zone =ZonedDateTime.now(); System.out.println(zone.getZone()); } }Перевірте зараз
Вихід:
Asia/Kolkata
Приклад класу Java ZonedDateTime: minus()
import java.time.Period; import java.time.ZonedDateTime; public class ZonedDateTimeExample4 { public static void main(String[] args) { ZonedDateTime zone= ZonedDateTime.now(); ZonedDateTime m = zone.minus(Period.ofDays(126)); System.out.println(m); } }Перевірте зараз
Вихід:
2016-09-15T12:54:01.354+05:30[Asia/Kolkata]
Клас Java ZonedDateTime Приклад: plus()
import java.time.*; public class ZonedDateTimeExample5{ public static void main(String[] args) { ZonedDateTime zone= ZonedDateTime.now(); ZonedDateTime p = zone.plus(Period.ofDays(126)); System.out.println(p); } }Перевірте зараз
Вихід:
2017-05-25T12:56:12.417+05:30[Asia/Kolkata]