我有一个Date实例的问题。我做了以下内容:Java日期时间问题
Date startDate = new Date(); //this is from database value
Date todayDate = new Date(); //this is created locally
现在,当我试图对它们进行比较,唯一的问题是,Date实例将有时间,所以当我检查,如果他们是平等的,它可能不会给同样的事情,我期望,但更少或更多。我测试了以下内容:
System.out.println(rsv.startDate);
System.out.println("Today date:"+todayDate);
if(rsv.startDate.equals(todayDate)){
System.out.println("Equal!");
}else if(rsv.startDate.after(todayDate)){
System.out.println("After!!");
}else{
System.out.println("Before!!!!");
}
尽管两者都是第5位,但它显示的是Before的输出,而不是相等的。我该如何补救?我知道SimpleDateFormat,但会将日期更改为字符串。
感谢,
你是想弄清楚如果两个日期是在同一天? (http://stackoverflow.com/questions/2517709/java-comparing-two-dates-to-see-if-they-are-in-the-same-day)。那么SimpleDateFormat有什么问题呢? – 2012-02-05 10:50:42