Java Trieda ZonedDateTime je nemenná reprezentácia dátumu a času s časovým pásmom. Zdedí triedu Object a implementuje rozhranie ChronoZonedDateTime.
Trieda ZonedDateTime sa používa na ukladanie všetkých polí dátumu a času s presnosťou na nanosekúnd a časového pásma s posunom zóny, ktorý sa používa na spracovanie nejednoznačných miestnych dátumov a časov.
Deklarácia triedy Java ZonedDateTime
Pozrime sa na deklaráciu triedy java.time.ZonedDateTime.
hrithik roshan
public final class ZonedDateTime extends Object implements Temporal, ChronoZonedDateTime, Serializable
Metódy Java ZonedDateTime
Metóda | Popis |
---|---|
Formát reťazca (formátor DateTimeFormatter) | Používa sa na formátovanie tohto dátumu a času pomocou určeného formátovača. |
int get (pole TemporalField) | Používa sa na získanie hodnoty zadaného poľa z tohto dátumu a času ako int. |
ZoneId getZone() | Používa sa na získanie časového pásma, ako napríklad „Ázia/Kolkata“. |
ZonedDateTime withZoneSameInstant (zóna ZoneId) | Používa sa na vrátenie kópie tohto dátumu a času s iným časovým pásmom so zachovaním okamihu. |
statický ZonedDateTime now() | Používa sa na získanie aktuálneho dátumu a času zo systémových hodín v predvolenom časovom pásme. |
statický ZonedDateTime of(LocalDate date, LocalTime time, ZoneId zone) | Používa sa na získanie inštancie ZonedDateTime z miestneho dátumu a času. |
ZonedDateTime mínus (dlhá sumaToSubtract, jednotka TemporalUnit) | Používa sa na vrátenie kópie tohto dátumu a času s odpočítaním špecifikovanej sumy. |
ZonedDateTime plus (dlhá sumaToAdd, jednotka TemporalUnit) | Používa sa na vrátenie kópie tohto dátumu a času s pridanou špecifikovanou sumou. |
Príklad triedy 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); } }Vyskúšajte to
Výkon:
2016-10-05T08:20:10+05:30[Asia/Kolkata]
Java trieda ZonedDateTime Príklad: of() and 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); } }Vyskúšajte to
Výkon:
latexová veľkosť textu
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 trieda ZonedDateTime Príklad: getZone()
import java.time.ZonedDateTime; public class ZonedDateTimeExample3{ public static void main(String[] args) { ZonedDateTime zone =ZonedDateTime.now(); System.out.println(zone.getZone()); } }Vyskúšajte to
Výkon:
Asia/Kolkata
Java trieda ZonedDateTime Príklad: 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); } }Vyskúšajte to
Výkon:
2016-09-15T12:54:01.354+05:30[Asia/Kolkata]
Príklad triedy 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); } }Vyskúšajte to
Výkon:
2017-05-25T12:56:12.417+05:30[Asia/Kolkata]