获取前一周的周一到周日日期

在开发中,经常会遇到需要获取前一周的日期范围的情况,比如需要查询上周的销售数据或者统计上周的用户活跃情况等。本文将介绍如何使用Java代码来获取前一周的周一到周日日期。

获取前一周日期范围的思路

要获取前一周的周一到周日日期范围,我们需要首先获取当前日期的前七天的日期,然后找到这七天中的周一和周日。具体的步骤如下:

  1. 获取当前日期
  2. 计算前七天的日期
  3. 找到前七天中的周一和周日

Java代码示例

下面是一个Java代码示例,演示了如何获取前一周的周一到周日日期范围:

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class LastWeekDates {
    public static void main(String[] args) {
        // 获取当前日期
        Calendar calendar = Calendar.getInstance();
        Date currentDate = calendar.getTime();

        // 计算前七天的日期
        calendar.add(Calendar.DAY_OF_MONTH, -7);
        Date lastWeekDate = calendar.getTime();

        // 找到前七天中的周一和周日
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        calendar.setTime(lastWeekDate);
        while (calendar.get(Calendar.DAY_OF_WEEK) != Calendar.MONDAY) {
            calendar.add(Calendar.DAY_OF_MONTH, 1);
        }
        String lastMonday = sdf.format(calendar.getTime());

        calendar.add(Calendar.DAY_OF_MONTH, 6);
        String lastSunday = sdf.format(calendar.getTime());

        System.out.println("Last week Monday: " + lastMonday);
        System.out.println("Last week Sunday: " + lastSunday);
    }
}

在这段代码中,我们首先获取当前日期,然后通过调整日期来计算前七天的日期。接着,我们找到前七天中的周一和周日,并使用SimpleDateFormat来格式化输出日期结果。

示例甘特图

下面是一个示例甘特图,展示了获取前一周周一到周日日期范围的过程:

gantt
    dateFormat  YYYY-MM-DD
    title 获取前一周的周一到周日日期范围
    section 计算日期
    获取当前日期:2022-01-10, 1d
    计算前七天的日期:2022-01-03, 1d
    找到周一和周日:2022-01-03, 7d

结论

通过本文的介绍,我们学习了如何使用Java代码来获取前一周的周一到周日日期范围。这个方法可以帮助我们在开发中快速、准确地获取需要的日期范围,提高开发效率。希望本文对你有所帮助!