根据给定的时间获得其他的时间
现在给你一个任意的时间,根据给出的时间获得它的下一周周一的时间,下一周 周日的时间,上一周 周一的时间,下一周 周日的时间,上一月的第一天 ,上一月的最后一天 ,下一月的第一天, 下一月的最后一天
------解决方案--------------------time?
用Calendar自己去加减吧,
第一天就是01
最后一天就是多加一个月然后减一天
------解决方案--------------------一切都可用Calendar类搞定。。。
------解决方案--------------------自己看看api啊
------解决方案--------------------Calendar可以用来做这个事情,写几个简单的启发启发,像其它上个月的自己去设置MOUTH就可以了。。。。
//获取给定时间当天的0点
public static Date getFirstHour(Date date){
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
return calendar.getTime();
}
//获取给定时间当天的23点59分
public static Date getlastHour(Date date){
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
calendar.set(Calendar.HOUR_OF_DAY, 23);
calendar.set(Calendar.MINUTE, 59);
calendar.set(Calendar.SECOND, 59);
calendar.set(Calendar.MILLISECOND, 999);
return calendar.getTime();
}
//获取给定时间所在月份的第一天
public static Date getFirstDay(Date date){
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
calendar.set(Calendar.DATE, calendar.getActualMinimum(Calendar.DATE));
return getFirstHour(calendar.getTime());
}
//获取给定时间所在月份的最后一天
public static Date getLastDay(Date date){
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
calendar.set(Calendar.DATE, calendar.getActualMaximum(Calendar.DATE));
return getlastHour(calendar.getTime());
}