程序如下
public static long time(String sysdate,String examinfotime)throws ParseException
{
SimpleDateFormat format=new SimpleDateFormat("yyyy-mm-dd");
Date da1 = format.parse("2007-12-12");
Date da2 = format.parse("2007-12-28");
System.out.println(da1.getTime());
System.out.println(da2.getTime());
long hours = (da1.getTime() - da2.getTime());
return hours;
}输出结果2002-12-12 对应的数值是1169827920000
输出结果2002-12-28 对应的数值是1168531920000
查询JDK Date的getTime() 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
那为什么日期越往后 对应的数值却越小了?
public static long time(String sysdate,String examinfotime)throws ParseException
{
SimpleDateFormat format=new SimpleDateFormat("yyyy-mm-dd");
Date da1 = format.parse("2007-12-12");
Date da2 = format.parse("2007-12-28");
System.out.println(da1.getTime());
System.out.println(da2.getTime());
long hours = (da1.getTime() - da2.getTime());
return hours;
}输出结果2002-12-12 对应的数值是1169827920000
输出结果2002-12-28 对应的数值是1168531920000
查询JDK Date的getTime() 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
那为什么日期越往后 对应的数值却越小了?
参考SimpleDateFormat说明
还是一样2007-12-12 getTime()算出的数值比2007-12-28的要大。
什么情况?
Date da2 = format.parse("2007-12-28");
System.out.println(da1.getTime()+"---");
System.out.println(da2.getTime())
输出:
1168531920000---
1169914320000一楼的话没人能看到吗,我多加个---醒目下
要么format.parse("2007-12-12")你填错了,要么就是输出没对应上
我测试了
日了
我是从数据库表里查的数据
一个是sysdate 一个是2007-12-28
结果这两个参数弄反了
刚才我拿实数测试了一下2007-12-12 2007-12-28
证明我以前那个弄反了
谢谢LS