Java丨时间判断谁前谁后
直奔主题:
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)结果:
请读者自行按照代码测试吧!光看没用的。
博文就到这里了,感谢您的观看,如果有什么意见以及建议请在评论留言......
======祝各位读者生活愉快======