public class Test { public static void main(String[] args) { Date endDate = new Date(); Date startDate = getDateBefore(new Date(),30); } private static Date getDateBefore(Date d, int day){ Calendar now =Calendar.getInstance(); now.setTime(d); now.set(Calendar.DATE,now.get(Calendar.DATE)-day); return now.getTime(); } }
如果不能使用java8,建议使用Calendar类来做,代码如下,
add
方法第二个参数传递负值即可。java8版本可以使用下面的方法:
如下,最后格式根据需要转化下即可:
startDate = nowDate - 30 * 24 * 60 * 60 * 1000
现在时间减去三十天的毫秒数即可。