LocalDate计算本月第一天、本月最后一天、下月第一天、本年第一天、本年最后一天、下一年第一天
使用Jdk8 LocalDate
计算:
- 本月第一天
- 本月最后一天
- 下月第一天
- 本年第一天
- 本年最后一天
- 下一年第一天
public static void main(String[] args) {
LocalDate localDate = LocalDate.now();
//今天
Date day = Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
System.out.println("今天:"+day);
//这个月的第一天
Date monthStart = Date.from(localDate.with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay(ZoneId.systemDefault()).toInstant());
System.out.println("本月第一天:"+monthStart);
//这个月的最后一天
Date monthEnd = Date.from(localDate.with(TemporalAdjusters.lastDayOfMonth()).atStartOfDay(ZoneId.systemDefault()).toInstant());
System.out.println("本月最后一天:"+monthEnd);
//下个月的第一天
Date nextMonthStart = Date.from(localDate.plusMonths(1).with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay(ZoneId.systemDefault()).toInstant());
System.out.println("下个月的第一天:"+nextMonthStart);
//今年的第一天
Date yearStart = Date.from(localDate.with(TemporalAdjusters.firstDayOfYear()).atStartOfDay(ZoneId.systemDefault()).toInstant());
System.out.println("今年第一天:"+yearStart);
Date yearEnd = Date.from(localDate.with(TemporalAdjusters.lastDayOfYear()).atStartOfDay(ZoneId.systemDefault()).toInstant());
System.out.println("今年最后一天:"+yearEnd);
//下一年的第一天
Date nextYearStart = Date.from(localDate.plusYears(1).with(TemporalAdjusters.firstDayOfYear()).atStartOfDay(ZoneId.systemDefault()).toInstant());
System.out.println("下一年第一天:"+nextYearStart);
}
标题:LocalDate计算本月第一天、本月最后一天、下月第一天、本年第一天、本年最后一天、下一年第一天
作者:码霸霸
地址:https://blog.lupf.cn/articles/2022/02/14/1644825512434.html