System.currentTimeMillis()和夏令时

时间:2017-03-27 19:52:00

标签: java android

我想知道System.currentTimeMillis()是否能解释android上的夏令时。

让我说我打电话 x = System.currentTimeMillis();

然后十秒钟后,由于夏令时,操作系统将时钟切换回一小时。

现在我打电话 y = System.currentTimeMillis();

哪个更大,xy

我问这个是因为如果我手动更改时钟,x大于y。所以我想知道在计算System.currentTimeMillis()返回的长值时是否考虑了夏令时。似乎无法在文档中找到任何内容。

1 个答案:

答案 0 :(得分:6)

  

如果System.currentTimeMillis()占夏令时

没有。

Daylight Saving Time (DST)System.currentTimeMillis无关。

System.currentTimeMillis的调用自1970年第一时起UTC 1970-01-01T00:00:00Z后给你一些毫秒数。没有对Leap Second的调整。

DST是根据无聊/未受过教育/疯狂的政客的心血来潮定义和重新定义的。 DST仅适用于一个或多个特定时区的辖区。

DST切换是异常现象,扰乱了一个地区公民的wall-clock time。但是space-time不会因DST切换而弯曲或扭曲,时间继续平稳流动。时间流量由System.currentTimeMillis衡量,而不考虑当地政治家的阴谋。