public List<String> getTimeInterval(Date date) { List<String> dataStr = new ArrayList<>(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Calendar cal = Calendar.getInstance(); cal.setTime(date); // 判断要计算的日期是否是周日,如果是则减一天计算周六的,否则会出问题,计算到下一周去了 int dayWeek = cal.get(Calendar.DAY_OF_WEEK);// 获得当前日期是一个星期的第几天 if (1 == dayWeek) { cal.add(Calendar.DAY_OF_MONTH, -1); } // System.out.println("要计算日期为:" + sdf.format(cal.getTime())); // 输出要计算日期 // 设置一个星期的第一天,按中国的习惯一个星期的第一天是星期一 cal.setFirstDayOfWeek(Calendar.MONDAY); // 获得当前日期是一个星期的第几天 int day = cal.get(Calendar.DAY_OF_WEEK); // 根据日历的规则,给当前日期减去星期几与一个星期第一天的差值 cal.add(Calendar.DATE, cal.getFirstDayOfWeek() - day); String monday = sdf.format(cal.getTime()); cal.add(Calendar.DATE, 1); String tuesday = sdf.format(cal.getTime()); cal.add(Calendar.DATE, 1); String wednesday = sdf.format(cal.getTime()); cal.add(Calendar.DATE, 1); String thursday = sdf.format(cal.getTime()); cal.add(Calendar.DATE, 1); String friday = sdf.format(cal.getTime()); cal.add(Calendar.DATE, 1); String saturday = sdf.format(cal.getTime()); cal.add(Calendar.DATE, 1); String sunday = sdf.format(cal.getTime()); dataStr.add(monday); dataStr.add(tuesday); dataStr.add(wednesday); dataStr.add(thursday); dataStr.add(friday); dataStr.add(saturday); dataStr.add(sunday); return dataStr; }
日历七天展示
最新推荐文章于 2023-09-15 16:31:25 发布