我正在构建一个月份列表,我将其用作 JSP 中表的标题。
我正在做的是比较我从数据库中获得的月份,并一直迭代或“尝试”到那个月份。在这种情况下,月份是 11 月
问题是我只能从 2012 年 10 月到 2013 年 10 月建立一个列表
我的逻辑看起来很合理,我不确定我还能尝试什么。
起点和比较..从数据库中,关键是
int effortYear = 2013
Calendar max = Calendar.getInstance();
max.set(effortYear,8,1,0,0,0);
for (ItemUnitBean item: scheduledBeans)
{
ItemUnitBean bean = new ItemUnitBean();
for(Entry<Date, ItemPhasing> en : item.getScheduledItemByMonth().entrySet() )
{
System.out.println( "KEY= " + en.getKey() ); // KEY =2013-11-01
if ( en.getKey().compareTo(max.getTime()) > 0 )
{
max.setTime(en.getKey());
}
}
finalScheduledBeans.add(bean);
}
现在建立列表:
TreeSet<Date> scheduledMonthList = new TreeSet<Date>();
Calendar temp = Calendar.getInstance();
temp.set(effortYear-1,9,1,0,0,0);
do
{
scheduledMonthList.add(temp.getTime());
System.out.println("montList= " + temp.getTime() );
temp.add( Calendar.MONTH, 1 );
} while( temp.compareTo(max) <= 0 );
这是记录器吐出的内容:
谁能看到为什么 11 月没有被添加到列表中?