logo

Java ZonedDateTime-klasse

De Java ZonedDateTime-klasse is een onveranderlijke representatie van een datum-tijd met een tijdzone. Het erft de Object-klasse en implementeert de ChronoZonedDateTime-interface.

De klasse ZonedDateTime wordt gebruikt om alle datum- en tijdvelden op te slaan, met een precisie van nanoseconden, en een tijdzone met een zone-offset die wordt gebruikt om dubbelzinnige lokale datum-tijden te verwerken.


Java ZonedDateTime-klassedeclaratie

Laten we de declaratie van de klasse java.time.ZonedDateTime bekijken.

probeer catchblock eens in java
 public final class ZonedDateTime extends Object implements Temporal, ChronoZonedDateTime, Serializable 

Methoden van Java ZonedDateTime

Methode Beschrijving
Tekenreeksindeling (DateTimeFormatter-formatter) Het wordt gebruikt om deze datum-tijd te formatteren met behulp van de opgegeven formatter.
int get(veld TijdelijkVeld) Het wordt gebruikt om de waarde van het opgegeven veld uit deze datum-tijd op te halen als een int.
ZoneId getZone() Het wordt gebruikt om de tijdzone op te halen, zoals 'Azië/Kolkata'.
ZonedDateTime withZoneSameInstant(ZoneId-zone) Het wordt gebruikt om een ​​kopie van deze datum-tijd terug te sturen met een andere tijdzone, waarbij het moment behouden blijft.
statisch ZonedDateTime nu() Het wordt gebruikt om de huidige datum-tijd te verkrijgen van de systeemklok in de standaardtijdzone.
statische ZonedDateTime of(LocalDate-datum, LocalTime-tijd, ZoneId-zone) Het wordt gebruikt om een ​​exemplaar van ZonedDateTime te verkrijgen van een lokale datum en tijd.
ZonedDateTime minus(lange amountToSubtract, TemporalUnit-eenheid) Het wordt gebruikt om een ​​kopie van deze datum-tijd terug te sturen, waarbij het opgegeven bedrag wordt afgetrokken.
ZonedDateTime plus(lange amountToAdd, TemporalUnit-eenheid) Het wordt gebruikt om een ​​kopie van deze datum-tijd terug te sturen met het opgegeven bedrag toegevoegd.

Java ZonedDateTime-klasse Voorbeeld

 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); } } 
Test het nu

Uitgang:

 2016-10-05T08:20:10+05:30[Asia/Kolkata] 

Java-klasse ZonedDateTime Voorbeeld: of() en 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); } } 
Test het nu

Uitgang:

tijger vergeleken met leeuw
 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-klasse Voorbeeld: getZone()

 import java.time.ZonedDateTime; public class ZonedDateTimeExample3{ public static void main(String[] args) { ZonedDateTime zone =ZonedDateTime.now(); System.out.println(zone.getZone()); } } 
Test het nu

Uitgang:

 Asia/Kolkata 

Java ZonedDateTime-klasse Voorbeeld: 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); } } 
Test het nu

Uitgang:

 2016-09-15T12:54:01.354+05:30[Asia/Kolkata] 

Java ZonedDateTime-klasse Voorbeeld: 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); } } 
Test het nu

Uitgang:

 2017-05-25T12:56:12.417+05:30[Asia/Kolkata]