Java 获取两个时间的时间差

前言

在平时的工作中,难免会遇到获取两个时间相差多少天、小时、分钟、秒、毫秒,现在我将自己获取的方法总结如下:

一、导入需要的依赖

 <dependency>
       <groupId>cn.hutool</groupId>
       <artifactId>hutool-all</artifactId>
       <version>4.6.10</version>
</dependency>

二、方法的说明

复制代码
## date1与date2 相差多少天
DateUtil.between(date1, date2, DateUnit.DAY);
## date1与date2 相差多少小时
DateUtil.between(date1, date2, DateUnit.HOUR);
## date1与date2 相差多少分钟
DateUtil.between(date1, date2, DateUnit.MINUTE); 
## date1与date2 相差多少秒
DateUtil.between(date1, date2, DateUnit.SECOND);
## date1与date2 相差多少毫秒
DateUtil.between(date1, date2, DateUnit.MS);
复制代码

三、方法测试

复制代码
public class DateTest {
    public static void main(String[] args) {
        Date data1 = DateUtil.parse("2022-09-07 12:23:25");
        Date date2 = DateUtil.parse("2022-09-07 18:23:25");
        System.out.println("两个时间相差 "+DateUtil.between(data1, date2, DateUnit.DAY)+" 天");
        System.out.println("两个时间相差 "+DateUtil.between(data1, date2, DateUnit.HOUR)+" 小时");
        System.out.println("两个时间相差 "+DateUtil.between(data1, date2, DateUnit.MINUTE)+" 分钟");
        System.out.println("两个时间相差 "+DateUtil.between(data1, date2, DateUnit.SECOND)+" 秒");
        System.out.println("两个时间相差 "+DateUtil.between(data1, date2, DateUnit.MS)+" 毫秒");
    }
}
复制代码

四、控制台输出如下

两个时间相差 0 天
两个时间相差 6 小时
两个时间相差 360 分钟
两个时间相差 21600 秒
两个时间相差 21600000 毫秒

五、方法扩展

## 将字符串时间转成Date类型  输出:2022-09-07 12:23:25
DateUtil.parse("2022-09-07 12:23:25");
## 将Date类型转成字符串时间  输出:2022-09-07 16:42:05
DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss");
posted @   [奋斗]  阅读(10174)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示