创建一个新日历.将时间设置为1/1/yyyy和一段时间.检查当前日期是否为星期日,并向前滚动一天,直到它为止.那是今年的第一个星期天.向前滚动7天,直到年份不再匹配,标记为你去.
像这样的东西应该有效。
int year = 2009;
Calendar cal = new GregorianCalendar(year, Calendar.JANUARY, 1);
for (int i = 0, inc = 1; i < 366 && cal.get(Calendar.YEAR) == year; i+=inc) {
if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) {
// this is a sunday
cal.add(Calendar.DAY_OF_MONTH, 7);
inc = 7;
} else {
cal.add(Calendar.DAY_OF_MONTH, 1);
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9180 次 |
最近记录: |