任何人都可以告诉我以下代码有什么问题吗?它增加了14天到对象就好了但是当它增加14天到2月17日它应该出现在今年的2012年3月2日,但我得到的是2012年2月31日.我试过添加2周,单日在一个for循环中,一切都会回到同一个日期.我花了两天时间搜索谷歌并尽可能多地阅读,但没有运气.希望有人在这里可以看到我失踪的东西.
while(calNextPaymentDate.before(calEnd))
{
Dates.add(date);
calNextPaymentDate.add(Calendar.DAY_OF_MONTH, 14);
date = (GregorianCalendar) calNextPaymentDate.clone();
}
Run Code Online (Sandbox Code Playgroud)
在calNextPaymentDate和calEnd有GregorianCalendar对象,我已经做了的痕迹,以确保日期将被填充的罚款.它正确地添加了14天的日期,但正如我所说,我不应该得到2012年2月31日的数据.