JAVA 日期时间比较
- SimpleDateFormat的format****方法将日期型转化成时间或日期的字符串,然后再比较字符串。
String startTimeStr = new SimpleDateFormat(“yyyy-MM-dd hh:mm:ss:SSS”).format(new Date());//2018-08-13 10:22:48.883
String endTimeStr = new SimpleDateFormat(“yyyy-MM-dd hh:mm:ss:SSS”).format(new Date());//2018-08-13 10:22:49.225
字符串时间比较大小
- date.getTime()
- 相加减或直接比较用大于小于号比较
Date startTime= df.parse(startTimeStr);
Date endTime= df.parse(endTimeStr);
if (startTime.getTime() > endTime.getTime()) {
return true;// startTime在endTime前
}
- 用****compareTo
compareTo() 方法用于将 Number 对象与方法的参数进行比较。可用于比较 Byte, Double, Integer, Float, Long 或 Short等。该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比较。
10.compareTo(3);//返回值1
3.compareTo(3);//返回值0
2.compareTo(3);//返回值-1
返回值:如果指定的数与参数相等返回0,如果指定的数小于参数返回 -1。如果指定的数大于参数返回 1。
- Date aftereforeequals直接比较
1**、after:返回值 true如果代表Date对象是严格迟于when表示的时刻; 否则为false。**
if (startTime.after(endTime)){
//表示startTime晚于endTime
}else{
–反之
}
2**、before:返回值 true如果Date对象在when表示的时刻之前,否则为false。**
if (startTime.before(endTime)){
//表示startTime早于endTime
}else{
–反之
}