
哈喽,大家好呀,好久不见!今天是一篇浅记。根据传入日期自动获取所在周一和周日…
正常基操方法,根据传入日期自动获取所在周一和周日。注意传入日期是周日的情况哈,需要往前推7天才是周一。
楼主方法中已处理,可贴出来直接使用。
/**
 * 获取日期所在周一和周日
 *
 * @param date
 * @return
 */
private static Map<String, String> getMondayAndSunday(Date date) {
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
    Map<String, String> result = new HashMap<>();
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(date);
    // 获取星期几的值(1表示星期日,2表示星期一,以此类推)
    int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
    // 计算周一的日期
    calendar.add(Calendar.DAY_OF_WEEK, Calendar.MONDAY - dayOfWeek);
    result.put("Monday", dateFormat.format(calendar.getTime()));
    if (dayOfWeek == Calendar.SUNDAY) {
        // 如果传入日期是周日,则取周一到该日期的时间范围
        calendar.add(Calendar.DAY_OF_WEEK, -7);
        result.put("Sunday", dateFormat.format(date));
        result.put("Monday", dateFormat.format(calendar.getTime()));
    } else {
        // 计算下一周的周日的日期
        calendar.add(Calendar.DAY_OF_WEEK, Calendar.SUNDAY - Calendar.MONDAY + 7);
        result.put("Sunday", dateFormat.format(calendar.getTime()));
    }
    return result;
}
                


















