需求说明:
按“yyyy-MM-dd”格式输入一个字符串型日期,然后输出这个日期为本年中的第几周。
实现思路:
使用SimpleDateFormat格式化输入参数。
Calendar下的静态属性WEEK_OF_YEAR返回本日期在本年份中的星期。
实现代码:
//获得字符串时间如“2018-05-12”为当前年的第几周 public static int getWeekOfYear(String date){ try { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); Calendar cal = Calendar.getInstance(); //设置每周的第一天为星期一 cal.setFirstDayOfWeek(Calendar.MONDAY); cal.setMinimalDaysInFirstWeek(1); //设置每周最少为1天 cal.setTime(df.parse(date)); return cal.get(Calendar.WEEK_OF_YEAR); } catch (Exception e) { e.printStackTrace(); } return 0; }