1.java比较两个date类型的数据(YYYY-MM-DD hh:mm:ss)
利用compareTo()方法比较
例如:
Date date1 = new Date();
Date date2 = new Date();
date1.compareTo(date2)
两者相等返回0,前者小返回-1,前者大返回1
该方法的底层依赖于将两个时间转换为毫秒值进行比较。
2.java比较时分秒的大小
jdk1.8以上版本可用以下方法:
LocalTime.now().isBefore(LocalTime.of(时(24小时制), 分,秒))
同理还有isAfter()及equal()方法
jdk1.8以下版本的方法:
思路一:
将时分秒的字符串转换为秒值比较大小(该方法需要校验字符串时间的格式准确性)
private boolean compareTime(String t1,String t2){
String arr1[] = t1.split(":");
String arr2[] = t2.split(":");
int s1 = Integer.parseInt(arr1[0])*3600+Integer.parseInt(arr1[1])*60+Integer.parseInt(arr1[2]);
int s2 = Integer.parseInt(arr2[0])*3600+Integer.parseInt(arr2[1])*60+Integer.parseInt(arr2[2]);
return s1>s2 ? true:false;
}
思路二:
利用SimpleDateFormat类将字符串时间转换为Date类型,再利用compareTo()方法比较大小