EST与美国/纽约时区之间的时差

有人可以告诉我,以下两个语句有什么区别:

TimeZone.getTimeZone("America/New_York")

TimeZone.getTimeZone("EST")

换句话说,为什么EST与America / New_York不同。同样在我的应用程序中,要使用美国当前时区,我应该使用America /

New_York还是EST。

回答:

EST实际上是纽约时区一半 。它 始终 处于标准时间-没有夏令时。IMO本身并不是一个正确的时区,它 整个时区的“标准”部分。当写的时区

只是 一个固定的偏移量,并且与某个特定位置无关时,我更喜欢使用“ Etc / GMT + 5”或类似的固定方式。(我通常甚至不喜欢“ Eastern

Time”之类的东西,因为观察“ Eastern Time”的不同地方的DST转换可能会有所不同。这有点像调用编码“扩展ASCII”……它告诉您 一些

信息,但还不够。)

因此,如果您想知道任何特定时刻纽约的 实际 本地时间,请使用America / New_York。

通常,请远离缩写。从文档中:

为了与JDK 1.1.x兼容,还支持其他三个字母的时区ID(例如“ PST”,“ CTT”,“

AST”)。但是,不赞成使用它们,因为相同的缩写通常用于多个时区(例如,“ CST”可以是美国的“ Central Standard Time”和“

China Standard Time”),并且Java平台只能识别以下一种他们。

(我个人还建议您远离DateCalendar,并尽可能使用Joda Time。但这确实是另一回事。)

以上是 EST与美国/纽约时区之间的时差 的全部内容, 来源链接: utcz.com/qa/435319.html

回到顶部