Java Date 时间比较的三种方法
compareTo方法比较
compareTo方法返回一个整数,表示两个日期的比较结果。如果返回值小于0,则表示date1在date2之前,如果大于0,则表示date1在date2之后,如果等于0,则表示两个日期相等
Date date1 = new Date();
Date date2 = new Date();
int result = date1.compareTo(date2);
if(result < 0){
System.out.println("date1在date2之前");
}else if(result > 0){
System.out.println("date1在date2之后");
}else{
System.out.println("date1和date2相等");
}
使用before(),after()比较
before()就是date1在date2之前,after()就是date1在date2之后
Date date1 = new Date();
Date date2 = new Date();
if(date1.before(date2)){
System.out.println("date1在date2之前");
}else if(date1.after(date2)){
System.out.println("date1在date2之后");
}else{
System.out.println("date1和date2相等");
}
转换成时间戳(毫秒)进行比较
先将时间类型转化成毫秒(时间戳),然后根据大小比较
Date date1 = new Date();
Date date2 = new Date();
long date1Long = date1.getTime();
long date2Long = date2.getTime();
if(date1Long > date2Long){
System.out.println("date1在date2之后");
}else if(date1Long < date2Long){
System.out.println("date1在date2之后");
}else{
System.out.println("date1和date2相等");
}