public int weekTransformDate(int week){
//获取Calendar对象
Calendar cal = Calendar.getInstance();
//设置时间为今天
cal.setTime(new Date());
//现在是星期几
int dayWeek = cal.get(Calendar.DAY_OF_WEEK)-1;
cal.add(Calendar.DATE, week-dayWeek);
return Integer.valueOf(new SimpleDateFormat(“yyyyMMdd”).format(cal.getTime()));
}
讲解:Calendar cal = Calendar.getInstance();首先获取Calendar对象
cal.setTime(new Date());调用setTime()方法,讲时间设置为当前时间
int dayWeek = cal.get(Calendar.DAY_OF_WEEK)-1;调用get方法,计算出当前日期是星期几,中国每周第一天是星期一,国外第一天是星期天,所以转换为中国日期习惯,需要减1;
cal.add(Calendar.DATE, week-dayWeek);调用add()方法,在日期的基础上,加上或者减去,当前日期与方法传入参数日期的差值,算出输出的星期对应的日期为多少号。
return Integer.valueOf(new SimpleDateFormat(“yyyyMMdd”).format(cal.getTime()));返回计算出的日期,因业务需要,所以方法返回值为int类型,可根据不同业务需要做更改。new SimpleDateFormat(“yyyyMMdd”).format(cal.getTime())是对日期的格式进行更改。
本文介绍了一个实用的Java方法,用于将星期数转换为对应的具体日期,并以yyyyMMdd格式返回。该方法利用了Java的Calendar类和SimpleDateFormat类,首先获取当前日期的Calendar实例,然后根据传入的星期数调整日期,最后格式化并返回调整后的日期。
1万+

被折叠的 条评论
为什么被折叠?



