哈喽,大家好呀,好久不见!今天是一篇浅记。根据传入日期自动获取所在周一和周日…
正常基操方法,根据传入日期自动获取所在周一和周日。注意传入日期是周日的情况哈,需要往前推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;
}