java通过传入一个指定日期获取该日期所在周的周一的日期,日期格式如:2016-07-30

来源:互联网 发布:算法 java 第四版 pdf 编辑:程序博客网 时间:2024/06/01 07:47
java通过传入一个指定日期获取该日期所在周的周一的日期,日期格式如:2016-07-30

private static void convertWeekDate(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);  
         }  
         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 imptimeBegin = sdf.format(cal.getTime()); //周一时间 
        
            
    
0 0
原创粉丝点击