Razred Java ZonedDateTime
Razred Java ZonedDateTime je nespremenljiva predstavitev datuma in časa s časovnim pasom. Podeduje razred Object in implementira vmesnik ChronoZonedDateTime.
Razred ZonedDateTime se uporablja za shranjevanje vseh datumskih in časovnih polj z natančnostjo nanosekund ter časovnega pasu z odmikom pasu, ki se uporablja za obravnavanje dvoumnih lokalnih datumov in ur.
Deklaracija razreda Java ZonedDateTime
Oglejmo si deklaracijo razreda java.time.ZonedDateTime.
public final class ZonedDateTime extends Object implements Temporal, ChronoZonedDateTime, Serializable
Metode Java ZonedDateTime
| Metoda | Opis |
|---|---|
| Oblika niza (oblikovalnik DateTimeFormatter) | Uporablja se za formatiranje tega datuma in časa z uporabo podanega oblikovalnika. |
| int get(polje TemporalField) | Uporablja se za pridobitev vrednosti podanega polja iz tega datuma-časa kot int. |
| ZoneId getZone() | Uporablja se za pridobitev časovnega pasu, kot je 'Azija/Kolkata'. |
| ZonedDateTime withZoneSameInstant(zoneId cona) | Uporablja se za vrnitev kopije tega datuma in časa z drugim časovnim pasom, pri čemer se ohrani trenutek. |
| statični ZonedDateTime zdaj() | Uporablja se za pridobitev trenutnega datuma in časa iz sistemske ure v privzetem časovnem pasu. |
| statični ZonedDateTime od (datum LocalDate, čas LocalTime, območje ZoneId) | Uporablja se za pridobitev primerka ZonedDateTime iz lokalnega datuma in ure. |
| ZonedDateTime minus(dolgi znesekza odštevanje, enota časovne enote) | Uporablja se za vrnitev kopije tega datuma in časa z odštetim podanim zneskom. |
| ZonedDateTime plus (dolgi znesek za dodajanje, enota TemporalUnit) | Uporablja se za vrnitev kopije tega datuma in ure z dodanim podanim zneskom. |
Primer razreda 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); } } Preizkusite zdaj Izhod:
2016-10-05T08:20:10+05:30[Asia/Kolkata]
Razred Java ZonedDateTime Primer: of() in 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); } } Preizkusite zdaj Izhod:
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]
Razred Java ZonedDateTime Primer: getZone()
import java.time.ZonedDateTime; public class ZonedDateTimeExample3{ public static void main(String[] args) { ZonedDateTime zone =ZonedDateTime.now(); System.out.println(zone.getZone()); } } Preizkusite zdaj Izhod:
Asia/Kolkata
Razred Java ZonedDateTime Primer: 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); } } Preizkusite zdaj Izhod:
2016-09-15T12:54:01.354+05:30[Asia/Kolkata]
Razred Java ZonedDateTime Primer: 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); } } Preizkusite zdaj Izhod:
2017-05-25T12:56:12.417+05:30[Asia/Kolkata]