我正在根據dueDate
字段與當前日期的比較來設置顏色字段。 dueDate
是SQL日期類型。我的問題是,當我通過當前日期Calendar.before()
方法表示日期在當前日期之前。我的代碼是:爲什麼Calendar()方法在相同日期返回true
private String getDateDueColor(Date dateDue) {
Calendar today = Calendar.getInstance();
today.setTime(new java.sql.Date(Calendar.getInstance().getTime().getTime()));
Calendar dueDate = Calendar.getInstance();
dueDate.setTime(dateDue);
if(dueDate.before(today)){
return RED;
}else{
return NORMAL;
}
}
我設置一個斷點,並比較dueDate
和today
和所有在cdate
字段中的信息爲每個對象看起來完全相同,但仍dueDate.before(today)
返回true。任何幫助,將不勝感激!
dateDue的值是什麼 – SDS
'Calendar.getInstance().getTime()。getTime()'是一個不必要的冗長和神祕的做'System.currentTimeMillis()'的方法。 – VGR
我在StackOverflow文章中發現了Calendar.getInstance()。getTime()。getTime()。感謝更短的版本。 – ponder275