我正在使用Joda-time,并且正在执行以下操作:
DateTimeZone timeZone = <Code that gets a TimeZone instance>
int offset = timeZone.getStandardOffset(new Date().getTime());
我想知道为什么对
timezone.getStandardOffset()
的调用需要传递毫秒数。我怀疑这是要考虑到时区偏移量的历史变化吗? (例如,我们需要考虑2005年那疯狂的一天,当时布什先生决定当天的中心时间将是UTC + 13,因为13大于-2)它是否正确?
最佳答案
在极少数情况下,地点的标准时间会改变。我能想到的最好的例子是阿拉斯加从俄罗斯成为美国的一部分(实际上是越过了国际日期变更线,该日期线一直沿加拿大和阿拉斯加的边界而行)。表示阿拉斯加的DateTimeZone
在该日期前后会有不同的标准偏移量。
关于java - 在Joda-time 2.1中,传递给DateTimeZOne.getStandardOffset的long是否重要?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22368759/