private Date getDateByType(Date date, Integer type) {
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        switch (type) {
        case 1:/* 日报 */
            // 明天的日期
            calendar.add(Calendar.DATE, 1);
            break;
        case 2:/* 周报 */
            // 获得当前日期是一个星期的第几天
            int dayWeek = calendar.get(Calendar.DAY_OF_WEEK);
            if (1 == dayWeek) {
                calendar.add(Calendar.DAY_OF_MONTH, -1);
            }
            // 设置一个星期的第一天,按中国的习惯一个星期的第一天是星期一
            calendar.setFirstDayOfWeek(Calendar.MONDAY);
            // 获得当前日期是一个星期的第几天
            int day = calendar.get(Calendar.DAY_OF_WEEK);
            int first = calendar.getFirstDayOfWeek();
            // 计算周五的日期
            calendar.add(Calendar.DAY_OF_WEEK, first - day + 4);
            break;
        case 3:/* 月报 */
            // 获取本月的最大天数
            int days = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
            // 设置创造新日期,这个日期是本月的最后一天
            calendar.set(Calendar.DATE, days);
            break;
        default:
            break;
        }
        return calendar.getTime();
    }

 

相关文章:

  • 2021-11-29
  • 2021-09-29
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-03
  • 2022-12-23
  • 2022-12-23
  • 2021-11-29
相关资源
相似解决方案