关闭

工具类

427人阅读 评论(0) 收藏 举报

//获得某个日期所在周的周一

private static void convertWeekByDate(Date time) {


SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); //设置时间格式

    Calendar cal = Calendar.getInstance();

    cal.setTime(time);

    //判断要计算的日期是否是周日,如果是则减一天计算周六的,否则会出问题,计算到下一周去了

    int dayWeek = cal.get(Calendar.DAY_OF_WEEK);//获得当前日期是一个星期的第几天

    if(1 == dayWeek) {

    cal.add(Calendar.DAY_OF_MONTH, -1);

    }

   

    cal.setFirstDayOfWeek(Calendar.MONDAY);//设置一个星期的第一天,按中国的习惯一个星期的第一天是星期一

    int day = cal.get(Calendar.DAY_OF_WEEK);//获得当前日期是一个星期的第几天

    cal.add(Calendar.DATE, cal.getFirstDayOfWeek()-day);//根据日历的规则,给当前日期减去星期几与一个星期第一天的差值 

    String imptimeBegin = sdf.format(cal.getTime());

    System.out.println("所在周星期一的日期:"+imptimeBegin);

   

   

}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:242185次
    • 积分:2557
    • 等级:
    • 排名:第14396名
    • 原创:62篇
    • 转载:41篇
    • 译文:0篇
    • 评论:37条