Java中计算时间差

关于时间差的计算我总结了一下。

方法一:

DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

try
{
    Date d1 
= df.parse("2008-03-26 13:31:40");
    Date d2 
= df.parse("2008-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("2008-03-26 13:31:40");
   java.util.Date date
=df.parse("2008-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("2008-01-02 11:30:24");
   java.util.Date end 
= dfs.parse("2008-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+"");

转载于:https://www.cnblogs.com/wllyy189/archive/2008/07/09/1238772.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值