下面的示例java代码打印日期。DateTest.java
import java.util.GregorianCalendar;
import java.util.Calendar;
public class DateTest{
public static void main(String []args){
Calendar cal = new GregorianCalendar();
cal.set(2013, 10, 13, 0, 0, 0);
System.out.println(cal.getTime());
}
}
但是,使用Java 7和8运行时会有一个时区:-$unset TZ
$ /sv/app/9.00/java/product/jdk1.8.0_66/bin/java DateTest
Wed Nov 13 00:00:00 AEST 2013
$ /sv/app/9.00/java/product/jdk1.7.0_60/bin/java DateTest
Wed Nov 13 00:00:00 EST 2013
我试着搜索文档,但可以找到关于这种增强/畸变的参考资料。
请参阅JRE发行说明:
JDK 7u60
IANA数据2014b。JDK 7u60包含IANA时区数据版本2014b
JDK 8u66
IANA数据2015f。JDK 8u66包含IANA时区数据版本2015f。
然后,您可以在"JRE软件中的时区数据版本"中看到TZ DB 2014f:发生了更改
澳大利亚东部时区的缩写现在是AEST/AEDT,而不是EST,澳大利亚其他时区也是如此。也就是说,对于东部标准时间和夏令时,缩写为AEST和AEDT,而不是前者的EST;类似地,现在使用ACST/ACDT、ACWST/ACWDT和AWST/AWDT,而不是以前的CST、CWST和WST。此更改不影响UTC偏移,只影响时区缩写。