java当前月份减一个月_Java Date类型 减一个月如何做

时间:2025-01-26 16:24:10

Java Date类型 减一个月怎么做?

String startDateStr = "" ;

String endDateStr = "" ;

TimeZone tzES2 = ("GMT+8");

Calendar calES2 = (tzES2);

Calendar ca = ();

Date now = ();

DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd" ) ;

(calES2) ;

String s = (now) ;//2013/01/03

String[] sp = ("/") ; // 2013 01 03

sp[-1] = "01" ;

((sp[1]));

startDateStr =  sp[0] + "/" + sp[1] + "/" + sp[2] ;

List list = new ArrayList() ;

sp[-1] = "31" ;

endDateStr = sp[0]  + "/" + sp[1]  + "/" + sp[2];

(endDateStr);

我这段程序可以获取到 当月 1号到 31号 的数据   就是 2013年1月1日 到2013年1月31日

如果修改它的月份,让它能指向上一个月的呢。就是 2012年12月1日 到 2012年12月31日

最好有代码解释。谢谢各位!

java

date

calendar

string

timezone

------解决方案--------------------

public static void main(String[] args) {

Calendar c = ();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

(, 2013);

(, 1);

(, 3);

(, -2);

((()));

}

------解决方案--------------------

String startDateStr = "";

String endDateStr = "";

TimeZone tzES2 = ("GMT+8");

Calendar calES2 = (tzES2);

Calendar ca = ();

Date now = ();

DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");

(calES2);

(, (Calendar.DAY_OF_MONTH));//设置当前日期为当前月的第一天

now = ();

startDateStr = (now);

(, (Calendar.DAY_OF_MONTH));//设置当前日期为当前月的最后一天

now = ();

endDateStr = (now);

(startDateStr);

(endDateStr);

(, -1);//设置日期为当前日期加上-1个月(即减去1个月)的日期。后面的操作同上