logo

Java ZonedDateTime クラス

Java ZonedDateTime クラスは、タイムゾーンを含む日付/時刻の不変表現です。 Object クラスを継承し、ChronoZonedDateTime インターフェイスを実装します。

ZonedDateTime クラスは、すべての日付と時刻のフィールドをナノ秒の精度で保存するために使用され、ゾーン オフセットを持つタイムゾーンは、曖昧なローカル日付/時間を処理するために使用されます。


Java ZonedDateTime クラス宣言

java.time.ZonedDateTime クラスの宣言を見てみましょう。

Cプログラミングを含む
 public final class ZonedDateTime extends Object implements Temporal, ChronoZonedDateTime, Serializable 

Java ZonedDateTime のメソッド

方法 説明
文字列形式(DateTimeFormatterフォーマッタ) 指定されたフォーマッタを使用してこの日時をフォーマットするために使用されます。
int get(TemporalField フィールド) この日時から指定されたフィールドの値を int として取得するために使用されます。
ゾーンID getZone() 「アジア/コルカタ」などのタイムゾーンを取得するために使用されます。
ZonedDateTime withZoneSameInstant(ZoneId ゾーン) これは、瞬間を保持したまま、別のタイムゾーンでこの日付/時刻のコピーを返すために使用されます。
静的 ZonedDateTime now() これは、デフォルトのタイムゾーンのシステムクロックから現在の日付/時刻を取得するために使用されます。
static ZonedDateTime of(LocalDate 日付、LocalTime 時間、ZoneId ゾーン) これは、ローカルの日付と時刻から ZonedDateTime のインスタンスを取得するために使用されます。
ZonedDateTime マイナス(long amountToSubtract, TemporalUnit 単位) これは、指定された量を差し引いたこの日付/時刻のコピーを返すために使用されます。
ZonedDateTime plus(long amountToAdd, TemporalUnit 単位) これは、指定された量を追加してこの日時のコピーを返すために使用されます。

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); } } 
今すぐテストしてください

出力:

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

Java ZonedDateTime クラス 例: of() および 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); } } 
今すぐテストしてください

出力:

 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 クラス 例: getZone()

 import java.time.ZonedDateTime; public class ZonedDateTimeExample3{ public static void main(String[] args) { ZonedDateTime zone =ZonedDateTime.now(); System.out.println(zone.getZone()); } } 
今すぐテストしてください

出力:

 Asia/Kolkata 

Java ZonedDateTime クラス 例: 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); } } 
今すぐテストしてください

出力:

抽象クラスはコンストラクターを持つことができます
 2016-09-15T12:54:01.354+05:30[Asia/Kolkata] 

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); } } 
今すぐテストしてください

出力:

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