java两个时间段计算相差时长

计算两个时间段相差时长

复制代码
public static String getDistanceTime(Long  str1 ,Long str2) {
        long day = 0;//天数差
        long hour = 0;//小时数差
        long min = 0;//分钟数差
        long second=0;//秒数差
        long diff=0 ;//毫秒差
        StringBuilder result =new StringBuilder();
        //String result = "";
        diff = str2-str1;
        day = diff / (24 * 60 * 60 * 1000);
        hour = (diff / (60 * 60 * 1000) - day * 24);
        min = ((diff / (60 * 1000)) - day * 24 * 60 - hour * 60);
        second = diff/1000;
        System.out.println("day="+day+" hour="+hour+" min="+min+" ss="+second%60+" SSS="+diff%1000);
        String daystr = day%30+"天";
        String hourStr = hour%24+"小时";
        String minStr = min%60+"分";
        String secondStr = second%60+"秒";
        if (day!=0){
            result.append(daystr);
            //result = result + daystr;
        }
        if (hour!=0){
            result.append(hourStr);
            //result = result + hourStr;
        }
        if (min!=0){
            result.append(minStr);
            //result = result + minStr;
        }
        if (second!=0){
            result.append(secondStr);
            //result = result + secondStr;
        }
        return result.toString();
    }

创建主方法

复制代码
public static void main(String[] args) throws ParseException {
        String a="2023-07-27 14:43:00";
        String b="2023-07-28 14:30:10";
        SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date parse1 = dateFormat.parse(a);
        Date parse2 = dateFormat.parse(b);
        String bigDecimal=getDistanceTime(parse1.getTime(),parse2.getTime());
        System.out.println(bigDecimal);
      
    }

运行结果

相关推荐
晨曦中的暮雨26 分钟前
限流算法——固定窗口、滑动窗口、漏桶、令牌桶
java·开发语言·算法
喵了几个咪1 小时前
GoWind CMS 拆解:在 Go 里给 TipTap 搭一套 Yjs 协同后端
开发语言·后端·golang
程序员清风1 小时前
数据处理脚本工程化:日志、配置、命令行与测试
服务器·开发语言·数据库
文丑颜不良啊2 小时前
LeetCode876~900题目解析
java·leetcode
aloha_7892 小时前
Java 基础、集合、异常与 JUnit 5 速查
java·junit·sqlserver
在世修行3 小时前
智学文枢:页面切换与跨页数据预填
python·桌面应用·signal·1024程序员节·pyside·跨页跳转·状态预填
知守观3 小时前
设计模式实战:从真实老项目中看标准模板方法与工厂的落地
java·spring·设计模式
2601_962885723 小时前
如何用 Python 把 K 线重采样成任意周期?
开发语言·python
独隅3 小时前
Claude API 实战教程:从入门到完整项目
android·java·数据库·claude·claude code
打工仔折腾 AI3 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化