java获取上个月第一天和最后一天时间
/**
* 获取上一个月1号0点0分0秒的时间
*/
private String getBeforeFirstMonthdate()throws Exception{
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar calendar=Calendar.getInstance();
calendar.add(Calendar.MONTH, -1);
calendar.set(Calendar.DAY_OF_MONTH, 1);
//将小时至00
calendar.set(Calendar.HOUR_OF_DAY, 00);
//将分钟至00
calendar.set(Calendar.MINUTE, 00);
//将秒至00
calendar.set(Calendar.SECOND,00);
String format1 = format.format(calendar.getTime());
return format1;
}
/**
* 获取上个月的最后一天23点59分59秒的时间
*/
private String getBeforeLastMonthdate()throws Exception{
SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar calendar=Calendar.getInstance();
int month=calendar.get(Calendar.MONTH);
calendar.set(Calendar.MONTH, month-1);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
//将小时至23
calendar.set(Calendar.HOUR_OF_DAY, 23);
//将分钟至59
calendar.set(Calendar.MINUTE, 59);
//将秒至59
calendar.set(Calendar.SECOND,59);
String format = sf.format(calendar.getTime());
return format;
}
打印出来结果是:
上个月第一天:2022-06-01 00:00:00
上个月最后一天:2022-06-30 23:59:59