如何判断一个其间包含了哪几个月? read the class Calendar and Date please.. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果是同一年,则先得到起始日期的月份A,然后再得到终止日期的月份B,然后在A和B之间做一个for循环即可;如果不是同一年,则要考虑年份,思路还是一样的;比如2005/1/30到2005/3/2:得到1和3之后,从1开始循环到3,这样就可以得到1、2、3,共3个月份 import java.util.Calendar;public class TestCalender { public static void main(String[] args) { Calendar beginDate = Calendar.getInstance(); beginDate.set(2004,1,29,0,0,0); System.out.println(beginDate.get(Calendar.MONTH)); Calendar endDate = Calendar.getInstance(); endDate.set(2005,3,2,0,0,0); int iCount = 0; int iMonth = 0; int iYear = 0; while(beginDate.getTimeInMillis() < endDate.getTimeInMillis()) { if(iYear != beginDate.get(Calendar.YEAR) || iMonth != (beginDate.get(Calendar.MONTH) - 1)) { iCount++; System.out.print("year==" + beginDate.get(Calendar.YEAR)); System.out.println(",and month==" + (beginDate.get(Calendar.MONTH) - 1)); iYear = beginDate.get(Calendar.YEAR); iMonth = (beginDate.get(Calendar.MONTH) - 1); } beginDate.setTimeInMillis(beginDate.getTimeInMillis() + 1000 * 60 * 60 * 24); } System.out.println("total:" + iCount); }}好像有点问题,不愿调试了。 创建一个窗口,有些问题 ThreadLocal 与 线程同步? 【免费】分享整套Java+Android病毒与反病毒视频教程! 如何动态加载jar包?急,在线等!!! 使用容器类遇到的问题,束手无策了. 问高手 关于jar打包 谢谢了 关于包语句的问题 今天正式加盟Java!请教java.lang中Import的类位置. 重发:struts 中的刷新问题 RMI服务端和客户端在同一太机器上成功,在不同的机器上不成功 用swing开发、怎样实现分隔线的功能? 关于HttpURLConnection的问题,谢谢
如果不是同一年,则要考虑年份,思路还是一样的;比如2005/1/30到2005/3/2:得到1和3之后,从1开始循环到3,这样就可以得到1、2、3,共3个月份
public class TestCalender {
public static void main(String[] args) {
Calendar beginDate = Calendar.getInstance();
beginDate.set(2004,1,29,0,0,0);
System.out.println(beginDate.get(Calendar.MONTH));
Calendar endDate = Calendar.getInstance();
endDate.set(2005,3,2,0,0,0);
int iCount = 0;
int iMonth = 0;
int iYear = 0;
while(beginDate.getTimeInMillis() < endDate.getTimeInMillis()) {
if(iYear != beginDate.get(Calendar.YEAR) || iMonth != (beginDate.get(Calendar.MONTH) - 1)) {
iCount++;
System.out.print("year==" + beginDate.get(Calendar.YEAR));
System.out.println(",and month==" + (beginDate.get(Calendar.MONTH) - 1));
iYear = beginDate.get(Calendar.YEAR);
iMonth = (beginDate.get(Calendar.MONTH) - 1);
}
beginDate.setTimeInMillis(beginDate.getTimeInMillis() + 1000 * 60 * 60 * 24);
}
System.out.println("total:" + iCount);
}
}
好像有点问题,不愿调试了。