java 获取上周开始时间和结束时间,上上周开始和上上周结束时间

以周一为开始,周日结束为例:

    public static void main(String[] args) {
        // 上一周
        LocalDate d1 = LocalDate.now().minusWeeks(1).with(TemporalAdjusters.previous(DayOfWeek.SUNDAY)).plusDays(1L);
        LocalDate d2 = LocalDate.now().minusWeeks(1).with(TemporalAdjusters.next(DayOfWeek.MONDAY)).minusDays(1L);
        System.out.println("上一周开始日期: " + d1);
        System.out.println("上一周结束日期: " + d2);
        LocalDate d3 = LocalDate.now().minusWeeks(2).with(TemporalAdjusters.previous(DayOfWeek.SUNDAY)).plusDays(1L);
        LocalDate d4 = LocalDate.now().minusWeeks(2).with(TemporalAdjusters.next(DayOfWeek.MONDAY)).minusDays(1L);
        System.out.println("上上一周开始日期: " + d3);
        System.out.println("上上一周结束日期: " + d4);
    }

网上代码太糟糕了,基本没有正确的。

只能自己写了