Java丨时间判断谁前谁后

时间:2022-12-19 11:28:57
直奔主题:

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 :秒数

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

  3)结果:

    请读者自行按照代码测试吧!光看没用的。

博文就到这里了,感谢您的观看,如果有什么意见以及建议请在评论留言......

======祝各位读者生活愉快======