after/before/compareTo
使用after/before进行日期比较时注意:
date1.after(date2)
当date1大于date2时,返回true,当小于等于时,返回false;
date1.before(date2)
当date1小于date2时,返回true,当大于等于时,返回false.
public static Date getFirstDayOfMonth(int year, int month) {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month);
cal.set(Calendar.DAY_OF_MONTH, 1);
cal.add(Calendar.MONTH, -1);
return cal.getTime();
}
@Test
public void testDate() {
try {
Date dt = getFirstDayOfMonth(Integer.parseInt("2020"), Integer.parseInt("08")); //fastDay f
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(sdf.format(dt));
Date date = sdf.parse("2020-09-01"); //锁
System.out.println(sdf.format(date));
if (-1 != date.compareTo(dt)) {
System.out.println("true");
} else {
System.out.println("false");
}
} catch (Exception e) {
e.getStackTrace();
}
}
@Test
public void testBeforeDate() {
try {
Date dt = getFirstDayOfMonth(Integer.parseInt("2020"), Integer.parseInt("09")); //fastDay f
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(sdf.format(dt));
Date date = sdf.parse("2020-09-01"); //锁
System.out.println(sdf.format(date));
if (date.before(dt)) {
System.out.println("true");
} else {
System.out.println("false");
}
} catch (Exception e) {
e.getStackTrace();
}
}
@Test
public void testAfterDate() {
try {
Date dt = getFirstDayOfMonth(Integer.parseInt("2020"), Integer.parseInt("09")); //fastDay f
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(sdf.format(dt));
Date date = sdf.parse("2020-09-01"); //锁
System.out.println(sdf.format(date));
if (date.after(dt)) {
System.out.println("true");
} else {
System.out.println("false");
}
} catch (Exception e) {
e.getStackTrace();
}
}
compareTo
before
After