我想將java.util.Date
-Objekt設置爲日期(一天)的最小或最大時間值。 我這樣做,現在(最小)的方式:如何設置java.util.Date的最小或最大時間值?
Calendar cal = Calendar.getInstance();
cal.setTime(aDate);
cal.set(Calendar.HOUR, 0);
//... same for minutes, seconds, milliseconds
但這似乎有點繁瑣。我如何設置最大值?
我想將java.util.Date
-Objekt設置爲日期(一天)的最小或最大時間值。 我這樣做,現在(最小)的方式:如何設置java.util.Date的最小或最大時間值?
Calendar cal = Calendar.getInstance();
cal.setTime(aDate);
cal.set(Calendar.HOUR, 0);
//... same for minutes, seconds, milliseconds
但這似乎有點繁瑣。我如何設置最大值?
是的,使用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);
這比標準的API,更好http://joda-time.sourceforge.net/ – NimChimpsky
喬達時間有一個類http://joda-time.sourceforge.net/apidocs/org/joda/time/DateMidnight.html,這是午夜的整整一天。 –
刪除了我的答案,因爲我誤解了問題對不起 – Steve