La classe Java ZonedDateTime è una rappresentazione immutabile di una data-ora con un fuso orario. Eredita la classe Object e implementa l'interfaccia ChronoZonedDateTime.
La classe ZonedDateTime viene utilizzata per archiviare tutti i campi di data e ora, con una precisione di nanosecondi, e un fuso orario con un offset di zona utilizzato per gestire date e orari locali ambigui.
Dichiarazione della classe Java ZonedDateTime
Vediamo la dichiarazione della classe java.time.ZonedDateTime.
qual è la dimensione dello schermo del mio monitor?
public final class ZonedDateTime extends Object implements Temporal, ChronoZonedDateTime, Serializable
Metodi di Java ZonedDateTime
Metodo | Descrizione |
---|---|
Formato stringa (formattatore DateTimeFormatter) | Viene utilizzato per formattare questa data-ora utilizzando il formattatore specificato. |
int get(campoTemporalField) | Viene utilizzato per ottenere il valore del campo specificato da questa data-ora come int. |
IDZona getZone() | Viene utilizzato per ottenere il fuso orario, ad esempio 'Asia/Calcutta'. |
ZonedDateTime conZoneSameInstant(zona ZoneId) | Viene utilizzato per restituire una copia di questa data-ora con un fuso orario diverso, conservando l'istante. |
ZonedDateTime statico adesso() | Viene utilizzato per ottenere la data e l'ora corrente dall'orologio del sistema nel fuso orario predefinito. |
static ZonedDateTime of (data LocalDate, ora LocalTime, zona ZoneId) | Viene utilizzato per ottenere un'istanza di ZonedDateTime da una data e un'ora locali. |
ZonedDateTime meno(lungo importoToSubtract, unità TemporalUnit) | Viene utilizzato per restituire una copia di questa data-ora con sottratto l'importo specificato. |
ZonedDateTime plus(lungo importoToAdd, unità TemporalUnit) | Viene utilizzato per restituire una copia di questa data-ora con l'importo specificato aggiunto. |
Esempio della classe 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); } }Provalo adesso
Produzione:
2016-10-05T08:20:10+05:30[Asia/Kolkata]
Classe Java ZonedDateTime Esempio: of() e 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); } }Provalo adesso
Produzione:
sottolineatura del ribasso
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]
Classe Java ZonedDateTime Esempio: getZone()
import java.time.ZonedDateTime; public class ZonedDateTimeExample3{ public static void main(String[] args) { ZonedDateTime zone =ZonedDateTime.now(); System.out.println(zone.getZone()); } }Provalo adesso
Produzione:
Asia/Kolkata
Classe Java ZonedDateTime Esempio: 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); } }Provalo adesso
Produzione:
2016-09-15T12:54:01.354+05:30[Asia/Kolkata]
Classe Java ZonedDateTime Esempio: 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); } }Provalo adesso
Produzione:
2017-05-25T12:56:12.417+05:30[Asia/Kolkata]