我想将java.util.Date
- Objekt设置为日期(一天)的最小或最大时间值。
我目前的方式(至少):
Calendar cal = Calendar.getInstance();
cal.setTime(aDate);
cal.set(Calendar.HOUR, 0);
//... same for minutes, seconds, milliseconds
但这看起来有点麻烦。我该如何设置最大值?
答案 0 :(得分:2)
是的,使用JodaTime的DateMidnight类,正如其他人所建议的那样。
或者,如果您无法切换到JodaTime,请使用DateUtils.truncate(Date, field)
中的Commons Lang和DateUtils.addXyz()
方法:
Date lastMidnight = DateUtils.truncate(new Date(), Calendar.DATE);
Date endOfToday = DateUtils.addMilliseconds(
DateUtils.addDays(lastMidnight, 1), -1);