Code
public String testDate(){
TimeZone.setDefault(TimeZone.getTimeZone("US/Eastern"));
Calendar fromDate = Calendar.getInstance();
Date date= new Date();
System.out.println(fromDate);
System.out.println(date);
}
我的日历变量显示 cdate 值2013-12-09T00:00:00.000Z
和时间价值1386649779590
在调试下面的日历变量时。
Calendar cal = Calendar.getInstance();
我在打印对象时看到的完整日历详细信息
System.out.println(cal);
Console
java.util.GregorianCalendar[time=1386649779590,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="US/Eastern",offset=-18000000,dstSavings=3600000,useDaylight=true,transitions=235,lastRule=java.util.SimpleTimeZone[id=US/Eastern,offset=-18000000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=3,startMonth=2,startDay=8,startDayOfWeek=1,startTime=7200000,startTimeMode=0,endMode=3,endMonth=10,endDay=1,endDayOfWeek=1,endTime=7200000,endTimeMode=0]],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2013,MONTH=11,WEEK_OF_YEAR=50,WEEK_OF_MONTH=2,DAY_OF_MONTH=9,DAY_OF_YEAR=343,DAY_OF_WEEK=2,DAY_OF_WEEK_IN_MONTH=2,AM_PM=1,HOUR=11,HOUR_OF_DAY=23,MINUTE=29,SECOND=39,MILLISECOND=590,ZONE_OFFSET=-18000000,DST_OFFSET=0]
虽然我的 java.util.date 变量显示日期为Mon Dec 09 07:37:50 EST 2013
,在调试日期变量时
Date date= new Date();
作为我的默认值timezone
我已经设置的是EST在程序启动时指定
TimeZone.setDefault(TimeZone.getTimeZone("US/Eastern"));
我正在工作timezone
IST.
我的问题是
Why is cal
of Calendar
and date
of Date()
不同的 ?