计算两个String型时间的时间差(使用LocalDateTime格式:几天又几时又几分又几秒)

     概述:使用LocalDateTime计算两时间的时间差,LocalDateTime自带的方法duration.toXXX计算的是两时间之间"总共"差了多少天/多少小时/多少分钟...,所以需要转换计算一下

package cn.itcast.mp;

import java.time.Duration;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class TestTime {
    public static void main(String[] args) {
        String time1 = "2022-08-22 14:11:12";
        String time2 = "2022-09-21 13:09:20";
        DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        //将String转换为localDateTime类型
        LocalDateTime localDateTime1 = LocalDateTime.parse(time1,dateTimeFormatter);
        LocalDateTime localDateTime2 = LocalDateTime.parse(time2,dateTimeFormatter);
        //LocalDateTime自带时间差计算(开始时间,结束时间)
        Duration duration = Duration.between(localDateTime1,localDateTime2);
        //两个时间之间,总共差的天/时/分/秒,
        long day = duration.toDays();
        long hours = duration.toHours();
        long minute = duration.toMinutes();
        //toMillis()获取的是毫秒所以除以1000换算成秒
        long second = duration.toMillis()/1000;
        //两个时间之间差了几天又几时又几分又几秒
        long Hours = hours - day * 24;
        long Minute = (minute - day * 24 * 60) - (Hours * 60);
        long Second = (second - day * 24 * 60 * 60) - (Hours * 60 * 60) - (Minute * 60);
        System.out.println("time1与time2之间的时间差"+
                day+"天"+
                Hours+"小时"+
                Minute+"分钟"+
                Second+"秒");
    }
}

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值