java关于Date日期类型的大小比较
作者:程序猿20
这篇文章主要介绍了java关于Date日期类型的大小比较,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
关于Date日期类型的大小比较
1.通过Date提供的compareTo()进行比较
java.util.Date类实现了Comparable接口
可以直接调用Date的compareTo()方法来比较大小
String beginTime = "2018-07-28 14:42:32";
String endTime = "2018-07-29 12:26:32";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date date1 = format.parse(beginTime);
Date date2 = format.parse(endTime);
int compareTo = date1.compareTo(date2);
System.out.println(compareTo);
} catch (ParseException e) {
e.printStackTrace();
}compareTo()方法的返回值,date1小于date2返回-1,date1大于date2返回1,相等返回0
2.通过Date自带的before()或者after()方法比较
String beginTime = "2018-07-28 14:42:32";
String endTime = "2018-07-29 12:26:32";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date date1 = format.parse(beginTime);
Date date2 = format.parse(endTime);
boolean before = date1.before(date2);
System.out.println(before);
} catch (ParseException e) {
e.printStackTrace();
}before()或者after()方法的返回值为boolean类型。
3.通过调用Date的getTime()方法获取到毫秒数来进行比较
String beginTime = "2018-07-28 14:42:32";
String endTime = "2018-07-29 12:26:32";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date date1 = format.parse(beginTime);
Date date2 = format.parse(endTime);
long beginMillisecond = date1.getTime();
long endMillisecond = date2.getTime();
System.out.println(beginMillisecond > endMillisecond);
} catch (ParseException e) {
e.printStackTrace();
}总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
