尝试查找给定日期的年周。使用以下代码片段。[Java 1.7]
问题: 2012年12月29日=第52周 2012年12月30日=第1周 2013年12月30日=第52周 2013年12月31日=第1周
当一年中的天数为365或366时,它会将周数设置为1。 似乎发生了模52的情况。 如何解决这个问题?
问题: 2012年12月29日=第52周 2012年12月30日=第1周 2013年12月30日=第52周 2013年12月31日=第1周
当一年中的天数为365或366时,它会将周数设置为1。 似乎发生了模52的情况。 如何解决这个问题?
import java.util.Calendar;
import java.util.GregorianCalendar;
public class cal2{
public static void main (String[] args) {
Calendar mycal = GregorianCalendar.getInstance();
mycal.setLenient(false);
int year = 2012;
int month = 11; //0=Jan, 11=Dec
int date = 29;
mycal.set(year , 0 , 1);
mycal.setFirstDayOfWeek(mycal.get(mycal.DAY_OF_WEEK));
mycal.set(year,month,date);
System.out.println("\n>>>>>>>>WEEK :"+mycal.get(mycal.WEEK_OF_YEAR));
// System.out.println("\nDATE :"+mycal);
}
}