方法一: 换算毫秒值比较
调用Date的getTime()方法获取到毫秒数来进行比较
String beginTime = "2022-05-28 14:42:32";
String endTime = "2022-05-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);
//换算成自1970年1月1日以来,由 Date对象表示的00:00:00 GMT的毫秒数。
long beginMillisecond = date1.getTime();
long endMillisecond = date2.getTime();
System.out.println(beginMillisecond > endMillisecond);
} catch (ParseException e) {
e.printStackTrace();
}
方法二: before()方法
before()方法的返回值为boolean类型
当date1 小于 date2时,返回true,当 大于等于 时,返回false
String beginTime = "2022-05-28 14:42:32";
String endTime = "2022-05-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();
}
方法三: after()方法
after()方法的返回值为boolean类型
当date1 大于 date2时,返回true,当 小于等于 时,返回false
String beginTime = "2022-05-28 14:42:32";
String endTime = "2022-05-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 after = date1.after(date2);
System.out.println(after);
} catch (ParseException e) {
e.printStackTrace();
}
方法四:compareTo()方法
compareTo()方法的返回值,date1 小于 date2返回-1,date1 大于 date2返回1, 相等 返回0
String beginTime = "2022-05-28 14:42:32";
String endTime = "2022-05-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();
}