获取上一周、上一个月的开始和结束日期

获取某个日期的上一周的开始和结束日期
	/**
     * 获取 date 日期 的上一周的开始结束日期,即使给定的日期是周一 也会 计算上一周的日期
     *
     * @param date 基准日期点
     * @return [0]:上一周的开始日期;[1] 上一周的结束日期
     */
    public static LocalDate[] getLastWeek(LocalDate date) {

        LocalDate[] weeks = new LocalDate[2];

        LocalDate localDate = date.minusWeeks(1);

        weeks[0] = localDate.with(DayOfWeek.MONDAY);
        weeks[1] = localDate.with(DayOfWeek.SUNDAY);

        return weeks;
    }

获取某个日期的上个月的开始和结束日期

	 /**
     * 获取 基准日期date 的上一个月的开始日期和结束日期
     *
     * @param date 基准日期点
     * @return [0]:上一个月的开始日期;[1] 上一个月的结束日期
     */
    public static LocalDate[] getLastMonth(LocalDate date) {

        LocalDate[] month = new LocalDate[2];
        LocalDate localDate = date.minusMonths(1);

        //startOfMonth
        month[0] = localDate.withDayOfMonth(1);

        //上一个月的天数

        int lengthOfMonth = localDate.lengthOfMonth();
        //endOfMonth
        month[1] = localDate.withDayOfMonth(lengthOfMonth);

        return month;
    }

你可能感兴趣的:(Java学习笔记)