我需要得到上周星期一和星期五的日期。为此,我得到本周星期一的日期并减去 7 天。这给了我上周星期一的日期。
要获得星期五的日期,我必须添加 4。这让我有点困惑,因为出于某种原因,一周的第一天是星期日,而不是英国的星期一。
无论如何,这就是我获取日期的方式。
// Get the dates for last MON & FRI
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
cal.add(Calendar.DAY_OF_WEEK, -7);
cal.set(Calendar.HOUR_OF_DAY,0);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
cal.set(Calendar.MILLISECOND,0);
// Get the date on Friday
cal.add(Calendar.DAY_OF_WEEK, 4);
cal.set(Calendar.HOUR_OF_DAY,23);
cal.set(Calendar.MINUTE,59);
cal.set(Calendar.SECOND,59);
cal.set(Calendar.MILLISECOND,0);
以上有效,但如果逻辑有任何问题,我很感兴趣。即它适用于二月,闰年等。
随意提出更好的解决方案/方法。
谢谢