java 怎么计算2个时间相差时分秒

 我来答
xiaofeizm55333

推荐于2021-01-26 · TA获得超过1.4万个赞
知道大有可为答主
回答量:8535
采纳率:78%
帮助的人:903万
展开全部
/**
 * 根据指定类型计算两个日期相差的时间<br>
 * eg. dateDiff(birth, today, Calendar.MONTH) 孩子的月龄
 * @param sDate    开始时间
 * @param eDate    结束时间
 * @param diffType 日期类型
 * @return 根据 diffType计算的 eDate - sDate 时差
 */
public static Long dateDiff(Date sDate, Date eDate, int diffType) {
    java.util.Calendar calst = java.util.Calendar.getInstance();   
    java.util.Calendar caled = java.util.Calendar.getInstance();  
    
    calst.setTime(sDate);   
    caled.setTime(eDate); 

long diffMill = caled.getTime().getTime() - calst.getTime().getTime();
long rtn = 0;
switch (diffType) {
case Calendar.MILLISECOND:
rtn = diffMill;
break;
case Calendar.SECOND:
rtn = diffMill / 1000;
break;
case Calendar.MINUTE:
rtn = diffMill / 1000 / 60;
break;
case Calendar.HOUR:
rtn = diffMill / 1000 / 3600;
break;
case Calendar.DATE:
rtn = diffMill / 1000 / 60 / 60 / 24;
break;
case Calendar.MONTH:
rtn = diffMill / 1000 / 60 / 60 / 24 / 12;
break;
case Calendar.YEAR:
rtn = diffMill / 1000 / 60 / 60 / 24 / 365;
break;
}
return rtn;
}

如图所示,这是一个综合返回两个时间差值的代码

匿名用户
2015-12-28
展开全部
Date one = new Date();
Date two = new Date();
long three = one.getTime()-two.getTime();
System.out.println(three);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
晟宁净n
2016-12-24 · TA获得超过5446个赞
知道小有建树答主
回答量:1931
采纳率:68%
帮助的人:561万
展开全部
请用getTime()获得秒数
Date a,b;
a = new Date();
b = new Date();
b.getTime() - a.getTime();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式