Java中计算时间差的方法
作者:萝卜白菜家族 时间:2023-11-15 10:35:44
本文实例讲述了Java中计算时间差的方法。分享给大家供大家参考。具体如下:
假设现在是2004-03-26 13:31:40
过去是:2004-01-02 11:30:24
要获得两个日期差,差的形式为:XX天XX小时XX分XX秒
方法一:
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try
{
Date d1 = df.parse("2004-03-26 13:31:40");
Date d2 = df.parse("2004-01-02 11:30:24");
long diff = d1.getTime() - d2.getTime();
long days = diff / (1000 * 60 * 60 * 24);
}
catch (Exception e)
{
}
方法二:
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date now = df.parse("2004-03-26 13:31:40");
java.util.Date date=df.parse("2004-01-02 11:30:24");
long l=now.getTime()-date.getTime();
long day=l/(24*60*60*1000);
long hour=(l/(60*60*1000)-day*24);
long min=((l/(60*1000))-day*24*60-hour*60);
long s=(l/1000-day*24*60*60-hour*60*60-min*60);
System.out.println(""+day+"天"+hour+"小时"+min+"分"+s+"秒");
方法三:
SimpleDateFormat dfs = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date begin=dfs.parse("2004-01-02 11:30:24");
java.util.Date end = dfs.parse("2004-03-26 13:31:40");
long between=(end.getTime()-begin.getTime())/1000;
//除以1000是为了转换成秒
long day1=between/(24*3600);
long hour1=between%(24*3600)/3600;
long minute1=between%3600/60;
long second1=between%60/60;
System.out.println(""+day1+"天"+hour1+"小时"+minute1+"分"+second1+"秒");
希望本文所述对大家的java程序设计有所帮助。
标签:Java,计算,时间差
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Java String的intern用法解析
2023-04-22 19:03:35
flutter中的资源和图片加载示例详解
2023-08-24 13:19:39
![](https://img.aspxhome.com/file/2023/5/108295_0s.jpg)
Android闹钟机制实现定时任务功能
2021-08-06 07:36:03
Spring-IOC容器中的常用注解与使用方法详解
2021-05-26 23:37:45
![](https://img.aspxhome.com/file/2023/6/122946_0s.png)
springboot+zookeeper实现分布式锁的示例代码
2022-02-05 08:48:48
![](https://img.aspxhome.com/file/2023/9/85469_0s.jpg)
java转换字符串编码格式的方法
2022-02-12 04:30:24
![](https://img.aspxhome.com/file/2023/0/129200_0s.png)
C#读取txt文件数据的方法实例
2022-12-08 15:25:41
![](https://img.aspxhome.com/file/2023/1/106501_0s.png)
Android实现颜色渐变动画效果
2022-05-31 09:52:53
![](https://img.aspxhome.com/file/2023/8/117128_0s.gif)
Mybatis实现SQL存储流程详解
2022-09-11 05:17:05
java可以作为第一门编程语言学习吗
2021-05-25 07:52:37
将Java对象序列化成JSON和XML格式的实例
2022-09-23 23:39:11
Android AS为xutils添加依赖过程图解
2023-11-16 03:51:05
![](https://img.aspxhome.com/file/2023/5/137845_0s.jpg)
Android 源码浅析RecyclerView ItemAnimator
2022-04-20 19:47:41
![](https://img.aspxhome.com/file/2023/2/137652_0s.png)
Eclipse自定义启动画面和图标的方法介绍
2022-05-14 09:27:13
Spring中的两种代理JDK和CGLIB的区别浅谈
2023-01-04 19:05:05
简单实现Android闹钟功能
2022-05-23 16:17:53
![](https://img.aspxhome.com/file/2023/6/108256_0s.jpg)
Java登录功能实现token生成与验证
2023-11-30 07:57:28
![](https://img.aspxhome.com/file/2023/6/94236_0s.jpg)
详解Java中方法重写和方法重载的6个区别
2023-11-28 13:42:18
![](https://img.aspxhome.com/file/2023/2/60072_0s.jpg)
Java 分割字符串详解及实例代码
2023-11-29 13:18:42
DevExpress中GridControl列转义的实现方法
2022-11-10 05:14:31
![](https://img.aspxhome.com/file/2023/8/68078_0s.png)