为什么TimeZone.getTimeZone(“MST”)方法与getTimeZone(“US / Mountain”)不同?

TimeZone.getTimeZone("US/Mountain")TimeZone.getTimeZone("MST")返回不同的结果。 这个java类中的MST不代表“Mountain Standard Time”吗?

您不应该在Java中使用短三个字母的名称( MST )。 自1998年以来,这已被弃用(参见JDK 1.3 TimeZone )。

有关某些问题和解决方法的详细信息,请参阅Sun Alert 102836 ,但您应该使用长名称(“America / Denver”我相信这种情况)。