java8
public static boolean flagIn30Day(LocalDate localDate){
LocalDate now = LocalDate.now();
LocalDate plusDays = now.plusDays(1);
LocalDate minusDays = now.minusDays(31);
System.out.println(minusDays.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
System.out.println(localDate.isAfter(minusDays));
System.out.println(localDate.isBefore(plusDays));
return localDate.isAfter(minusDays) && localDate.isBefore(plusDays);
}
Date
public static boolean flagIn30DayDate(String strDate) {
String YYYY_MM_DD = "yyyy-MM-dd";
int day = -30;
boolean convertSuccess = false;
SimpleDateFormat format = new SimpleDateFormat(YYYY_MM_DD);
String nowDate = format.format(new Date());
Calendar calc = Calendar.getInstance();
calc.add(Calendar.DAY_OF_MONTH, day);
String minDate = format.format(calc.getTime());
try {
format.setLenient(false);
String strDate = format.format(format.parse(str));
if (nowDate.compareTo(strDate) >= 0 && strDate.compareTo(minDate) >= 0){
convertSuccess = true;
}
} catch (ParseException e) {
e.printStackTrace();
}
return convertSuccess;
}