2011-09-08 95 views
1

我想將java.util.Date -Objekt設置爲日期(一天)的最小或最大時間值。 我這樣做,現在(最小)的方式:如何設置java.util.Date的最小或最大時間值?

Calendar cal = Calendar.getInstance(); 
cal.setTime(aDate); 
cal.set(Calendar.HOUR, 0); 
//... same for minutes, seconds, milliseconds 

但這似乎有點繁瑣。我如何設置最大值?

+2

這比標準的API,更好http://joda-time.sourceforge.net/ – NimChimpsky

+0

喬達時間有一個類http://joda-time.sourceforge.net/apidocs/org/joda/time/DateMidnight.html,這是午夜的整整一天。 –

+1

刪除了我的答案,因爲我誤解了問題對不起 – Steve

回答

2

是的,使用JodaTime的DateMidnight類,正如其他人所建議的那樣。

或者,如果你不能切換到JodaTime,使用DateUtils.truncate(Date, field)Commons LangDateUtils.addXyz()方法:

Date lastMidnight = DateUtils.truncate(new Date(), Calendar.DATE); 
Date endOfToday = DateUtils.addMilliseconds(
         DateUtils.addDays(lastMidnight, 1), -1); 
+0

很酷,因爲我的班級路徑中已經有commons-lang。但是,我將如何設置最大值? – Zeemee

+0

@穆爾莫斯看到我的更新 –

+1

謝謝 - 這是你的複選標記。 – Zeemee

相關問題