一、Calendar小解析;
Date begin=examUser1.getHandInTime();
Calendar calendar=Calendar.getInstance();
calendar.setTime(begin);
calendar.set(Calendar.MONTH,0);
calendar.set(Calendar.DAY_OF_MONTH,0);
calendar.set(Calendar.HOUR_OF_DAY,0);
calendar.set(Calendar.MINUTE,1);
System.out.println(calendar);
System.out.println(calendar.getClass());
System.out.println(calendar.getTime());
System.out.println(calendar.getTime().getClass());
System.out.println(calendar.getTime().getTime());
①java.util.GregorianCalendar[time=?,areFieldsSet=false,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2017,MONTH=0,WEEK_OF_YEAR=39,WEEK_OF_MONTH=5,DAY_OF_MONTH=0,DAY_OF_YEAR=271,DAY_OF_WEEK=5,DAY_OF_WEEK_IN_MONTH=4,AM_PM=0,HOUR=9,HOUR_OF_DAY=0,MINUTE=1,SECOND=42,MILLISECOND=0,ZONE_OFFSET=28800000,DST_OFFSET=0]
②class java.util.GregorianCalendar
③Sat Dec 31 00:01:42 CST 2016
④class java.util.Date
⑤1483113702000
这里就很明显了;
1.calendar是一个复合的综合时间日期类型;
2.calendar的类型是GregorianCalendar类型;
3.calendar.getTime()是Date类型;
4.calendar.getTime.getTime()是fastTime,即毫秒数;一般的getTime()获取的就是毫秒数,但是Calendar后面接的第一个getTime()是获取Date(),如果在getTime()才是毫秒数;
二、时间比较大小;
如果比较大小,先转换成毫秒数(getTime()),然后再比较;