获取指定日期前一周周一和周日 /获取指定日期所在周的周一和周日

发布时间 2023-10-31 19:14:43作者: 我的心儿
        /**
         * 获取日期所在前周的第一天和最后一天
         */
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        Calendar calendarWeek =Calendar.getInstance();
        calendarWeek.setTime(new Date());
        calendarWeek.add(Calendar.WEEK_OF_MONTH, -1);  
        calendarWeek.setFirstDayOfWeek(Calendar.MONDAY); //以周一为首日
        calendarWeek.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
        System.out.println("日期前周第一天:" + sdf.format(calendarWeek.getTime()));
        calendarWeek.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
        System.out.println("日期前周最一天:" + sdf.format(calendarWeek.getTime()));
        /**
         * 获取日期所在周的第一天和最后一天
         */
        Calendar calendarWeek =Calendar.getInstance();
        calendarWeek.setTime(new Date());
        calendarWeek.add(Calendar.DATE, 0 * 7);    // 0 表示当前周,-1 表示上周,1 表示下周,以此类推
        calendarWeek.setFirstDayOfWeek(Calendar.MONDAY); //以周一为首日
        calendarWeek.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
        System.out.println("日期所在周第一天:" + sdf.format(calendarWeek.getTime()));
        calendarWeek.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
        System.out.println("日期所在周最一天:" + sdf.format(calendarWeek.getTime()));