( 24 * 60 * 60*1000) 这种计算表达式在 Java中是默认以 Integer类型来的,若不超过 Integer的最大值则没有问题,若超过则必须加上L ( 24 * 60 * 60*1000L)
Date date1=new Date(System.currentTimeMillis() - 24 * 60 * 60 * 1000); System.out.println(date1);// 获取当前时间的30天前的时间 // 如果运算中不加L的话会出错 Date date2=new Date(System.currentTimeMillis() - 24 * 60 * 60 * 1000 * 30L); System.out.println(date2);