我想比较两个日期并检查日期是否已过期。
以下是我使用的代码:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:ss:ii");
Date date1 = sdf.parse("20012-10-4 10:15:25");
Date date2 = sdf.parse("2013-10-4 10:15:25");
if(date1.equals(date12)){
System.out.println("Both are equals");
}
我想查看两个日期,但没有成功。
我也试过这样检查:
if(date1 >= date2){
System.out.println("Both are not equals");
}
但它也没有用。
答案 0 :(得分:47)
java.util.Date类具有比较日期的方法之前和之后。
Date date1 = new Date();
Date date2 = new Date();
if(date1.before(date2)){
//Do Something
}
if(date1.after(date2)){
//Do Something else
}
答案 1 :(得分:4)
尝试使用此功能。它会帮助您: -
public class Main {
public static void main(String args[])
{
Date today=new Date();
Date myDate=new Date(today.getYear(),today.getMonth()-1,today.getDay());
System.out.println("My Date is"+myDate);
System.out.println("Today Date is"+today);
if(today.compareTo(myDate)<0)
System.out.println("Today Date is Lesser than my Date");
else if(today.compareTo(myDate)>0)
System.out.println("Today Date is Greater than my date");
else
System.out.println("Both Dates are equal");
}
}
答案 2 :(得分:2)
阅读JavaDocs
。
使用方法:
Date.compareTo()
答案 3 :(得分:2)
您应该查看Date类的compareTo函数。
答案 4 :(得分:1)
您可以使用:
date1.before(date2);
或:
date1.after(date2);
答案 5 :(得分:1)
您equals(Object o)比较是正确的。
但是,您应该使用after(Date d)和before(Date d)进行日期比较。