计算给定年份的周数
我想获得任何一年中的周数。即使52
被接受为全球通用的答案,对于日历2015
,2020
而2026
实际上有53
几个星期。
有什么方法可以计算出来,或者有什么函数可以帮助我?
回答:
根据维基百科关于ISO周日期格式的文章,您可以使用以下代码进行计算。
Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, 2015);
cal.set(Calendar.MONTH, Calendar.DECEMBER);
cal.set(Calendar.DAY_OF_MONTH, 31);
int ordinalDay = cal.get(Calendar.DAY_OF_YEAR);
int weekDay = cal.get(Calendar.DAY_OF_WEEK) - 1; // Sunday = 0
int numberOfWeeks = (ordinalDay - weekDay + 10) / 7;
System.out.println(numberOfWeeks);
似乎来自@Samuel的答案更好,并且没有Luca提到的错误
快速一线:
Integer weeksOfYear = Calendar.getInstance().getActualMaximum(Calendar.WEEK_OF_YEAR);
以上是 计算给定年份的周数 的全部内容, 来源链接: utcz.com/qa/415351.html