我想比較兩個日曆對象與他們的日期。Java /安卓:字面上比較日期的2日曆對象
我的代碼:
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.set(2017, 1,2);
c2.set(2017, 1,1);
int compared = c1.compareTo(c2);
textView.setText("" + compared);
結果應該是-1或1,其中,我的情況應該是一個int:-1。
但是,這不是我想要的結果。我想能夠比較日期直接說:
01/20/2010 compared to 02/30/2014 returns true or false.
有一些方法來實現這個基於日曆lib?
我知道建立在諸如getDay(),getMonth(),equals()等方法。問題是,在使用getDay(),getMonth(),getYear()時,我比較3個int時很難進行比較。
此外,我有一種感覺,要比較兩個日期之間,我將不得不將時區和timeinMillis設置爲相同。意思是比較直接的日期,對於cal1和cal2,它的時區和timeinmillis必須是相同的。
有人可以向我澄清這件事嗎?
從[文檔:的compareTo()](http://docs.oracle.com/javase/8/docs/api/java/util/Calendar.html#compareTo-java.util。如果參數所表示的時間等於該日曆所表示的時間,則日曆 - )返回「0值」。如果此日曆的時間在參數所代表的時間之前,則值小於0;如果此日曆的時間在參數所代表的時間之後,則該值大於0.「*請不要指望它是-1還是1. –
您想要的結果是什麼?對於第一個比第二個更早的情況,這應該是相同的還是正確的?要麼…? –