5

我运行以下 Java 代码:

TimeZone tz1 = TimeZone.getTimeZone("Etc/GMT-3");
System.out.println(tz1.getDisplayName());

显示器是GMT+03:00

似乎当我们使用具有诸如 id 的时区时Etc/GMTxx,符号是相反的。为什么 ?

4

1 回答 1

6

那是 ETC 风格:

http://en.wikipedia.org/wiki/Zoneinfo

“Etc”的特殊区域用于一些行政区,特别是“Etc/UTC”,它代表协调世界时。为了符合 POSIX 风格,那些以“Etc/GMT”开头的区域名称的符号与大多数人的预期相反。在这种风格中,格林威治标准时间以西的区域有一个正号,东部的区域有一个负号(例如,“Etc/GMT-14”是格林威治标准时间之前/东部的 14 小时。

于 2013-04-25T11:57:38.410 回答