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

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

常用的LocalDateTime的计算API

//获得当前时间
LocalDateTime.now() 
// 获得两个时间之间的相差值
Duration dur= Duration.between(LocalDateTime startTime,  LocalDateTime  endTime );
//两个时间差的分钟数
dur.toMinutes()   
//纳秒
dur.toNanos()
//毫秒
dur.toMillis()
//分钟
dur.toMinutes()
//小时
dur.toHours()
//天数
dur.toDays()

之前需要用到LocalDateTime去计算一个倒计时,上网查了一下,发现LocalDateTime的API中没有明确的能够计算到两个时间之间相差的天数,小时数,分钟数,秒钟数,所以只能自己写了强制计算的方法,记录一下

public void getDate() {
   LocalDateTime now = LocalDateTime.now();
   LocalDateTime end = LocalDateTime.of(2020, 7, 30, 16, 6, 38);
   System.out.println(now + "||||" + end);
   System.out.println("计算两个时间的差:");
   //获取秒数
   long nowSecond = now.toEpochSecond(ZoneOffset.ofHours(0));
   long endSecond = end.toEpochSecond(ZoneOffset.ofHours(0));
   long absSeconds = Math.abs(nowSecond - endSecond);
   System.out.println(nowSecond + "||" + endSecond);
   //获取秒数
   long s = absSeconds % 60;
   //获取分钟数
   long m = absSeconds / 60 % 60;
   //获取小时数
   long h = absSeconds / 60 / 60 % 24;
   //获取天数
   long d = absSeconds / 60 / 60 / 24;
   
   System.out.println(d + "天" + h + "时" + m + "分" + s + "秒");
}
  • 11
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值