Java8时间计算方法
//获取上个月的当前时间
//获取当前时间
LocalDateTime now1 = LocalDateTime.now();
//获取上个月的当天(这一天)miuns()获取前面月份的方法,参数1为前一个月,参数2为月
LocalDateTime minus = now1.minus(1, ChronoUnit.MONTHS);
//获取下个月的当天
LocalDateTime plus = now1.plus(1, ChronoUnit.MONTHS);
System.out.println("上个月的今天" + minus.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
System.out.println("下个月的今天" + plus.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
//自定时间
LocalDate date = LocalDateTimeUtil.parseDate("2021-07-30");
LocalDate minus1 = date.minus(1, ChronoUnit.MONTHS);
LocalDate plus1 = date.plus(1, ChronoUnit.MONTHS);
System.out.println("自定义时间上个月的今天" + minus1);//2021-06-30
System.out.println("自定义时间下个月的今天" + plus1);//2021-06-31
//得到某个时间的前一天,或者后一天
LocalDate plus1 = date.plusDays(-1);
LocalDate plus2 = date.plusDays(1);
System.out.println("前一天时间" + plus1);//2021-07-29
System.out.println("明天时间" + plus2);//2021-07-31
//获取指定日期的月份最后一天
String strDate="2022-09-12";
LocalDate localDate=LocalDate.parse(strDate,DateTimeFormatter.ofPattern("yyyy-MM-dd"));
System.out.println("时间:"+localDate);
LocalDate date= localDate.with(TemporalAdjusters.lastDayOfMonth());
System.out.println("转换后的时间:"+date);
//时间:2022-09-12
//转换后的时间:2022-09-30
运行输出结果: