1. 传入一个格式为(yyyy-MM-dd)的字符串 2. 将字符串解析为日期对象 3. 获取日历对象,将日期设置为你传入的日期 4. 将日历对象的月份+1,并设置为1号(比如你传的是2020-6-23,这儿就设置为了2020-7-1) 5. 再将日历对象的日-1就是上个月最后一天的日期(刚刚设置为了2020-7-1,日减一天就是2020-6-30)
上代码:
public static Date getThisMonthLastDay(String thisMonthFirstDay){ try { //把本月第一天的日期字符串转换为日期类型 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date date = sdf.parse(thisMonthFirstDay); //获取日历对象 Calendar calendar = Calendar.getInstance(); //设置日历为 本月第一天 calendar.setTime(date); //设置下月第一天 calendar.add(Calendar.MONTH, 1); //调整为前一天, 为本月最后一天 calendar.add(Calendar.DAY_OF_MONTH, -1); return calendar.getTime(); } catch (ParseException e) { e.printStackTrace(); } return null; }代码在这儿了按需修改
欢迎批评指正