A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© Curvat 中级黑马   /  2016-6-3 09:41  /  716 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

直奔主题:

String date_str1 = "2016-06-02 23:03:123";

String date_str2 = "2016-06-03 03:03:993";

上面的date_str1 和 date_str2 是一个字符串形式的时间 ,那么我们要来判断那个时间在前那个时间在后面 ,怎么来判断呢?

判断方法:

1、直观法:用眼睛看~~~~~,这是什么鬼 只要不是眼瞎都能看出来 date_str1在date_str2之前,还是不瞎扯了, 看下面的方法。

2、判断时间前后方法之一(ps:另外的方法小编还没试过)

  1)先上代码:

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    Date date1 = sdf.parse(date_str1);

    Date date2 = new Date(date_str2 );

    long stampTime = date1.getTime() - date2.getTime();

    long day=stampTime /(24*60*60*1000);

    long hour=(stampTime /(60*60*1000)-day*24);

    long min=((stampTime /(60*1000))-day*24*60-hour*60);

    long s=(stampTime /1000-day*24*60*60-hour*60*60-min*60);

    代码上完

  2)代码解析:

    SimpleDateFormat :通俗一点就是用来字符格式的时间Date类型互相转换用的。(想要了解官方的解释自行移步看官方英文文档!)

    stampTime  : 时间戳  Date 里面的 getTime()方法可以得到时间戳 (什么是时间戳 自己百度去吧 ,这里就不详细解释了)

    day :根据stampTime计算出来的天数

    hour :同上原理计算出来的小时数

    min : 分钟数

    s :秒数

    以上是从天、 时 、分 、秒 这样一层一层算下来的,就像一层一层剥开你的心一样.....


2 个回复

倒序浏览
我想知道哪里可以找到文档,感谢楼主
回复 使用道具 举报
纠结帝 发表于 2016-6-3 09:44
我想知道哪里可以找到文档,感谢楼主

http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马