/**
* 根据原来的时间(Date)获得相对偏移 N 月的时间(Date)
* @param protoDate 原来的时间(java.util.Date)
* @param dateOffset(向前移正数,向后移负数)
* @return 时间(java.util.Date)
*/
public static Date getOffsetMonthDate(Date protoDate,int monthOffset){
Calendar cal = Calendar.getInstance();
cal.setTime(protoDate);
// cal.set(Calendar.MONTH, cal.get(Calendar.MONTH) - monthOffset); //这种写法是错误的,这种偏移以30天为标准
cal.add(Calendar.MONTH, -monthOffset); //正确写法
System.out.println(cal.get(Calendar.MONTH));
return cal.getTime();
}