public class PastDateUtil {
public static long TIME = 86400000;
public static String getPastDate(int interval,String endDate){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String startDate = "";
try {
Date date = sdf.parse(endDate);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DATE, -interval);
Date date1 = calendar.getTime();
startDate = sdf.format(date1);
} catch (ParseException e) {
e.printStackTrace();
}
return startDate;
}
public static String getMonthDate(int month,String startDate){
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date date = null;
Date endDate = null;
try {
date = sdf.parse(startDate);
LocalDateTime localDateTime = date.toInstant()
.atZone(ZoneId.systemDefault() )
.toLocalDateTime().minusMonths (month);
endDate = Date.from(localDateTime.atZone( ZoneId.systemDefault()).toInstant());
} catch (ParseException e) {
e.printStackTrace();
}
return sdf.format(endDate);
}
public static String getDate(String endDate,Integer compareDate) {
String startDate = "";
if (Constant.PAST_ONE_DAT.equals(compareDate)){
startDate = PastDateUtil.getPastDate(Constant.ONE_DAT,endDate);
}else if (Constant.PAST_TEN_DAT.equals(compareDate)){
startDate = PastDateUtil.getPastDate(Constant.TEN_DAT,endDate);
}else if(Constant.PAST_THIRTY_DAT.equals(compareDate)){
startDate = PastDateUtil.getPastDate(Constant.THIRTY_DAT,endDate);
}
return startDate;
}
public static void main(String[] args) throws ParseException{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
String date=getMonthDate(4,"2020-06-30");
System.out.println("前month月的时间:" + date);
}
}