请考虑以下代码段.
TimeZone tz = TimeZone.getTimeZone("GMT");
System.out.println(tz);
Calendar cal = Calendar.getInstance();
cal.set(2017, Calendar.DECEMBER, 25);
System.out.println("before setting time zone: " + cal.getTime());
cal.setTimeZone(tz);
System.out.println("after setting time zone: " + cal.getTime());
Run Code Online (Sandbox Code Playgroud)
结果如下:
sun.util.calendar.ZoneInfo[id="GMT",offset=0,dstSavings=0,useDaylight=false,transitions=0,lastRule=null]
before setting time zone: Mon Dec 25 22:39:53 EST 2017
after setting time zone: Mon Dec 25 22:39:53 EST 2017
Run Code Online (Sandbox Code Playgroud)
在时区更改后,为什么日期的打印输出仍显示EST?不应该是GMT吗?