// 结束时间要大于等于当前时间
Date date1 = simpleDateFormat.parse("2011-07-14 19:32");// 设置为当前这一分钟的时间
Date date2 = simpleDateFormat.parse("2011-07-14 19:32");// 设置为当前这一分钟的时间
System.out.println(date1);// Thu Jul 14 19:32:00 CST 2011
System.out.println(date2);// Thu Jul 14 19:32:00 CST 2011
System.out.println(date1.after(date2));// false(这是合理的)
System.out.println(date2.before(date1));// false(这是合理的)
Calendar now = Calendar.getInstance();
now.set(Calendar.SECOND, 0);// 当前时间,不精确到秒
System.out.println(date1);// Thu Jul 14 19:32:00 CST 2011
System.out.println(now.getTime());// Thu Jul 14 19:32:00 CST 2011
System.out.println(date1.after(now.getTime()));// false(这是合理的)
System.out.println(date1.before(now.getTime()));// true(这是不合理的)
// 我的目的是要允许提交一个时间(忽略秒),它大于等于当前时间(忽略秒)。
// 使用Calendar虽然能把秒去除,但与Date比较,java的实现有问题,故不使用Calendar。所以还是使用Date。
// 由于时间比较时只精确到分钟,所以直接与当前时间比较,则endDate和当前时间在同一分支内时,endDate.before(now)为true,仍然创建失败。
// 所以才会设置now=System.currentTimeMillis()-60000,以把当前时间减少60秒,之后再比较
Date date = new Date(System.currentTimeMillis() - 60000);// 当前时间的前一分钟