在之前的文章中我们已经学习了DateUtils工具类中的一些方法的用法,接下来我们更深入的了解其他的方法
Calendar c = DateUtils.ceiling(Calendar.getInstance(), Calendar.DATE);
System.out.println(DateFormatUtils.format(c, "yyyy-MM-dd HH:mm:ss"));
Date date = DateUtils.ceiling(new Date(), Calendar.MONTH);
System.out.println(DateFormatUtils.format(date, "yyyy-MM-dd HH:mm:ss"));
Object date1 = new Date();
Date date2= DateUtils.ceiling(date1, Calendar.MONTH);
System.out.println(DateFormatUtils.format(date2, "yyyy-MM-dd HH:mm:ss"));
注:可以通过上面的方法获取下一年的1月1号,下一月的第一天,下一天的凌晨,下一小时,下一分钟,下一秒钟等等。
Calendar c = DateUtils.truncate(Calendar.getInstance(), Calendar.DATE);
System.out.println(DateFormatUtils.format(c, "yyyy-MM-dd HH:mm:ss"));
//同上
Date d = DateUtils.truncate(new Date(), Calendar.MONTH);
System.out.println(DateFormatUtils.format(d, "yyyy-MM-dd HH:mm:ss"));
//同上
Object date = new Date();
Date d1 = DateUtils.truncate(date, Calendar.YEAR);
System.out.println(DateFormatUtils.format(d1, "yyyy-MM-dd HH:mm:ss"));
//比较截取到日期指定的年月日时分秒的日期的值是的大小
int compare = DateUtils.truncatedCompareTo(new Date(), new Date(), Calendar.MILLISECOND);
//同上
int compare1 = DateUtils.truncatedCompareTo(Calendar.getInstance(), Calendar.getInstance(), Calendar.MONTH);
//比较截取到日期指定的年月日时分秒的日期的值是否相等
boolean flag = DateUtils.truncatedEquals(new Date(), new Date(), Calendar.MILLISECOND);
//同上
boolean flag1 = DateUtils.truncatedEquals(Calendar.getInstance(), Calendar.getInstance(), Calendar.MONTH);
//当时间是2019-02-20 00:00:00 ,结果是:2019-01-01 00:00:00
Date date = DateUtils.round(new Date(), Calendar.YEAR);
//获取指定日期过去了多少天
long num = DateUtils.getFragmentInDays(new Date(), Calendar.MONTH);