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平台只能识别以下一种他们。
(我个人还建议您远离Date
和Calendar
,并尽可能使用Joda Time。但这确实是另一回事。)
以上是 EST与美国/纽约时区之间的时差 的全部内容, 来源链接: utcz.com/qa/435319.html