日期:2014-05-20  浏览次数:20823 次

如何比较两个Date对象哪个时间早晚?(本人初学,很小白的问题)
public class time implements compareTo<Date> 报错
{
Date a=new Date(2012,1,1);
Date b=new Date(2012,5,5);

a.compareTo(b);

}


我初学java几天,各种接口不熟悉,上面是胡写的。

查看了API,Date中有 compareTo(Date anotherDate) 比较两个日期的顺序。

返回值是int

想问下:这个compareTo 到底怎么用?是有现成的比较date的,还是得重写?

如果需要重写,请大家帮忙写几行吧。我真没写过

另外,返回值是int ,是不是 返回0就是相等? 返回大于1的是参数中的日期大(晚)还是?

------解决方案--------------------
public static void main(String[] args){
System.out.println(comt("2011-06-23","2012-06-23"));
}

public static int comt(String a,String b){
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
try {
Date d1=sdf.parse(a);
Date d2=sdf.parse(b);
if(d1.getTime()>d2.getTime())
{
return 1;
}
else{
return 0;
}
} catch (ParseException e) {

e.printStackTrace();
}
return 0;
}
看哈应该就懂了.