Java计算两个时间之间的差值

计算两个时间的差值,精确到秒

package timedifference;

import java.text.SimpleDateFormat;
import java.util.Date;

public class TimeDifference {
	
	TimeDifference(){}

	/***
	 * @comments 计算两个时间的时间差
	 * @param strTime1
	 * @param strTime2
	 */
	private void getTimeDifference(String strTime1,String strTime2) {
		//格式日期格式,在此我用的是"2018-01-24 19:49:50"这种格式
		//可以更改为自己使用的格式,例如:yyyy/MM/dd HH:mm:ss 。。。
		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		   try{
			   Date now = df.parse(strTime1);
			   Date date=df.parse(strTime2);
			   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+"秒");
		   }catch(Exception e){
			   e.printStackTrace();
		   }
	}
	/***
	 * @comments 测试使用
	 * @param args
	 */
	public static void main(String[] args) {
		TimeDifference td = new TimeDifference();
		String strTime1 = "2018-01-24 19:49:50";
		String strTime2 = "2017-09-17 10:58:40";
		td.getTimeDifference(strTime1, strTime2);
	}
}

得到结果:

129天8小时51分10秒

  • 6
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值