1

UTC の概念と Java 8 の新しい TimeApi を理解しようとしています。

Instant from = Instant.from(ZonedDateTime.of(2016, 12, 11, 00, 23, 24, 245, ZoneId.systemDefault()));
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Date date = simpleDateFormat.parse("2016-06-10 21:19:18");

System.out.println("Case1:");
System.out.println(date.toInstant());
System.out.println(ZonedDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault()));

System.out.println("Case2:");
System.out.println(from);
System.out.println(ZonedDateTime.ofInstant(from, ZoneId.systemDefault()));

次の出力が出力されます。

Case1:
2016-06-10T19:19:18Z
2016-06-10T21:19:18+02:00[Europe/Berlin]

Case2:
2016-12-10T23:23:24.000000245Z
2016-12-11T00:23:24.000000245+01:00[Europe/Berlin]

ゾーン オフセットCase1+02:00時間単位である理由は何Case2 +01:00ですか?

4

1 に答える 1

3

2016-06-10T19:19:18Zは 6 月です (ベルリンが夏時間 ( 中央ヨーロッパ夏時間) の場合)。

2016-12-10T23:23:24.000000245Zは 12 月です (ベルリンが夏時間ではない場合:中央ヨーロッパ時間)。

したがって、UTC オフセットは異なります。

于 2016-06-10T20:17:26.963 に答える