什麼是計算java中兩個日曆日期之間的時間量的最佳方法。我正在編寫一種方法,用於確定在兩個日期之間傳遞的月數,並根據預定義的月數返回布爾值。這是我的代碼(無法正常工作)。如何確定Java中兩個日曆對象之間的時間?
此代碼始終返回false。此代碼也不考慮已過去的天數。如果開始日期是一個月末,這可能是一個問題。有沒有簡單的compareTo方法?
private boolean hasMatured()
{
Calendar now = Calendar.getInstance();
Calendar start = (Calendar) super.dateOpened.clone();
int nowYear = now.get(Calendar.YEAR);
int nowMonth = now.get(Calendar.MONTH);
int startYear = start.get(Calendar.YEAR);
int startMonth = start.get(Calendar.MONTH);
int monthsElapsed = (nowYear - startYear) * 12 + (nowMonth - startMonth);
return monthsElapsed>PERIOD_IN_MONTHS;
}
在未來的問題中,請發佈以及**什麼**沒有正確工作。這段代碼發生了什麼?應該發生什麼呢?張貼在SSCCE(http://sscce.org)的味道都會非常有幫助。 – BalusC 2010-02-12 19:04:05
我看到你編輯了這個問題。這裏的實際日期是什麼?將'now.getTime()','start.getTime()'和'monthsElapsed'的'System.out.println()'添加到方法的結尾。 – BalusC 2010-02-12 20:18:48
@ZeroDivide:在你的評論中你說這是針對「CS任務」的。因此,請將問題標記爲家庭作業。 – GreenMatt 2010-02-12 20:55:44