你可以這樣做更簡單,看看Date類:
http://developer.android.com/reference/java/util/Date.html
,並嘗試像,僞:
// This month 5th
Date date = new Date();
date.setDay(5);
// Next month the 5th
Date nextDate = new Date();
nextDate.setDay(5);
nextDate.setMonth(date.getMonth()+1);
您將有問題,當你來到今年底,但它比你目前所面對的問題少。
還有其他Date API,有些會爲您解決年度問題。只是看看周圍。
編輯
只注意到棄用使用日曆:
http://developer.android.com/reference/java/util/Calendar.html
Calendar now = Calendar.getInstance();
now.setField(Calendar.DAY_OF_MONTH, 5);
// Next month the 5th
Calendar nextDate = new = Calendar.getInstance();
nextDate.setField(Calendar.DAY_OF_MONTH, 5);
nextDate.setField(Calendar.MONTH_OF_YEAR, date.getField(Calendar.MONTH_OF_YEAR)+1); // issues in december
'Calendar'比'Date'一個更好的選擇。 – CommonsWare 2011-03-31 15:23:04
@CommonsWare我正在編輯,因爲你評論:-)通常在Java中使用DateMidnight(),因爲它有加號(持續時間);考慮數月和數年,有什麼建議? – Blundell 2011-03-31 15:26:11
沒關係應該做的第一個開始日期。現在我只需要重複一點。 – AndyAndroid 2011-03-31 15:34:47