Java ZonedDateTime klase ir nemainīgs datuma un laika attēlojums ar laika joslu. Tas pārmanto objektu klasi un ievieš ChronoZonedDateTime saskarni.
ZonedDateTime klase tiek izmantota, lai saglabātu visus datuma un laika laukus ar precizitāti līdz nanosekundēm, un laika joslu ar zonas nobīdi, ko izmanto, lai apstrādātu neskaidrus vietējos datuma laikus.
Java ZonedDateTime klases deklarācija
Apskatīsim klases java.time.ZonedDateTime deklarāciju.
unix augšējā komanda
public final class ZonedDateTime extends Object implements Temporal, ChronoZonedDateTime, Serializable
Java ZonedDateTime metodes
Metode | Apraksts |
---|---|
Virknes formāts (DateTimeFormatter formatētājs) | To izmanto, lai formatētu šo datumu un laiku, izmantojot norādīto formatētāju. |
int get (lauks TemporalField) | To izmanto, lai iegūtu norādītā lauka vērtību no šī datuma-laika kā int. |
ZoneId getZone() | To izmanto, lai iegūtu laika joslu, piemēram, “Āzija/Kolkata”. |
ZonedDateTime arZoneSameInstant(ZoneId zona) | To izmanto, lai atgrieztu šī datuma un laika kopiju ar citu laika joslu, saglabājot momentu. |
statisks ZonedDateTime tagad() | To izmanto, lai iegūtu pašreizējo datumu un laiku no sistēmas pulksteņa noklusējuma laika joslā. |
statisks ZonedDateTime of(vietējais datums, vietējā laika laiks, zonas ID zona) | To izmanto, lai iegūtu ZonedDateTime gadījumu no vietējā datuma un laika. |
ZonedDateTime mīnus (gara summaAtņemt, TemporalUnit vienība) | To izmanto, lai atgrieztu šī datuma un laika kopiju, atņemot norādīto summu. |
ZonedDateTime plus (gars Pievienojamais daudzums, TemporalUnit vienība) | To izmanto, lai atgrieztu šī datuma un laika kopiju, pievienojot norādīto summu. |
Java ZonedDateTime klases piemērs
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); } }Izmēģiniet to tagad
Izvade:
2016-10-05T08:20:10+05:30[Asia/Kolkata]
Java ZonedDateTime klases piemērs: of() un 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); } }Izmēģiniet to tagad
Izvade:
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 klases piemērs: getZone()
import java.time.ZonedDateTime; public class ZonedDateTimeExample3{ public static void main(String[] args) { ZonedDateTime zone =ZonedDateTime.now(); System.out.println(zone.getZone()); } }Izmēģiniet to tagad
Izvade:
Asia/Kolkata
Java ZonedDateTime klases piemērs: mīnus()
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); } }Izmēģiniet to tagad
Izvade:
garuma virkne
2016-09-15T12:54:01.354+05:30[Asia/Kolkata]
Java ZonedDateTime klases piemērs: 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); } }Izmēģiniet to tagad
Izvade:
2017-05-25T12:56:12.417+05:30[Asia/Kolkata]