//采用单例模式获取日历对象Calendar.getInstance();
Calendar c = Calendar.getInstance();
//通过日历对象得到日期对象
Date d = c.getTime();
//设置当前日历日期
c.setTime(d);
//增加两个月
c.add(Calendar.MONTH,2);
//设置天数为:从1号开始倒数3天
c.set(Calendar.DATE,-3);
**add方法,在原日期上增加年/月/日
**set方法,直接设置年/月/日
package date; import java.text.SimpleDateFormat; // import java.util.Calendar; import java.util.Date; public class TestDate { private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public static void main(String[] args) { Calendar c = Calendar.getInstance(); Date now = c.getTime(); // 当前日期 System.out.println("当前日期:\t" + format(c.getTime())); // 下个月的今天 c.setTime(now); c.add(Calendar.MONTH, 1); System.out.println("下个月的今天:\t" +format(c.getTime())); // 去年的今天 c.setTime(now); c.add(Calendar.YEAR, -1); System.out.println("去年的今天:\t" +format(c.getTime())); // 上个月的第三天 c.setTime(now); c.add(Calendar.MONTH, -1); c.set(Calendar.DATE, 3); System.out.println("上个月的第三天:\t" +format(c.getTime())); } private static String format(Date time) { return sdf.format(time); } }