2017-03-27 15 views
0

System.currentTimeMillis()がアンドロイドの夏時間を考慮しているのだろうかと思います。System.currentTimeMillis()と夏時間

のは、私が x = System.currentTimeMillis();

してから10秒後、OSが原因夏時間のバック時間をクロックを切り替えて呼び出すとしましょう。

そして今、私は y = System.currentTimeMillis();

大きくなります

xまたはyを呼びますか?

クロックを手動で変更すると、xyより大きいため、私はこれを尋ねます。だから、System.currentTimeMillis()によって返されたlong値を計算するときに夏時間が考慮されているのだろうかと思います。ドキュメントで何かを見つけることができないようです。

+4

実際には、「現在の時刻と1970年1月1日の深夜との差(ミリ秒単位)」です。 https://docs.oracle.com/javase/7/docs/api/java/lang/System.html#currentTimeMillis() – njzk2

+0

私はそれを見ましたが、現時点では夏時間を完全に無視していますか?私は人間として使用する日付システムとは独立しているからだと思いますが、私は確信しています。 – Pythogen

+1

https://en.wikipedia.org/wiki/Coordinated_Universal_Time – njzk2

答えて

3

のSystem.currentTimeMillis()は夏時間

Daylight Saving Time (DST)を占める場合System.currentTimeMillisとは無関係です。

System.currentTimeMillisを呼び出すと、1970年の最初の瞬間からUTC1970-01-01T00:00:00Zに数ミリ秒が得られます。うるう秒の調整はありません。

DSTは、退屈な/教育を受けていない/クレイジーな政治家の気まぐれに定義され、再定義されます。 DSTは、1つまたは複数の特定のタイムゾーンでの管轄にのみ適用されます。

DSTカットオーバーは異常です。地域の市民のためにwall-clock timeを混乱させます。しかし、space-timeはDSTカットオーバーで曲がったり歪んだりしないので、時間がスムーズに流れ続けます。その時間の流れは、地元の政治家の計画に関係なく、System.currentTimeMillisによって測定されます。

+0

これは暴言のように読まれます。あなたはAraruaからですか? –

+0

@DavidWallace Ararua? Googleと私を困らせた。暴言に関しては、すべての人に合理的な正当な理由なしに一時間早く、一時間遅く起きるように指示する法律の愚かさについてのみ。 –

+1

本当ですか?私はいくつかのヒットを得ましたが、それは私の場所に起因する可能性があります。ニュージーランドが1970年代半ばに夏時間を導入したとき、アララと呼ばれる約100人の農業コミュニティが反抗しました。何年もの間、彼らは参加を拒否し、夏の間は「昼間」の時間に時計を保持しました。 Ararua時間がニュージーランドの時間とは異なる時間帯として示された「タイムゾーン」マップも公開されていました。 –