版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qingfeng812/article/details/53424520

main 函数调用 :

 public static void main(String[] args) throws ParseException {// 获取指定long型的时间System.out.println(parseMillisecone(436765000L));;// 获取时间差的秒数long diff = getDifference(new Date(), new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2016-12-10 00:00:00"), 0);System.out.println(getDifference(new Date(), new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2016-12-10 00:00:00"), 0));System.out.println("时间:" + parseMillisecone(diff));System.out.println("时间:" + parseMillisecone(diff * 1000));
}

打印结果:

5天1时19分25秒
715051
时间:0天0时11分55秒
时间:8天6时37分31秒

方法:

/*** 两个时间间的时间戳计算函数* @param beginDate* @param endDate* @param f  时间差的形式0:秒,1:分种,2:小时,3:天* @return  long 秒*/public static long getDifference(Date beginDate, Date endDate, int f) {long result = 0;if (beginDate == null || endDate == null) {return 0;}try {// 日期相减获取日期差X(单位:毫秒)long millisecond = endDate.getTime() - beginDate.getTime();/*** Math.abs((int)(millisecond/1000)); 绝对值 1秒 = 1000毫秒* millisecond/1000 --> 秒 millisecond/1000*60 - > 分钟* millisecond/(1000*60*60) -- > 小时 millisecond/(1000*60*60*24) -->* 天* */switch (f) {case 0: // secondreturn  (millisecond / 1000);case 1: // minutereturn (millisecond / (1000 * 60));case 2: // hourreturn  (millisecond / (1000 * 60 * 60));case 3: // dayreturn (millisecond / (1000 * 60 * 60 * 24));}} catch (Exception e) {e.printStackTrace();}return result;}/*** 计算时差 根据 long 返回时间点* * @param millisecond* @return string 0天0时11分55秒*/
public static String parseMillisecone(long millisecond) {String time = null;try {long yushu_day = millisecond % (1000 * 60 * 60 * 24);long yushu_hour = (millisecond % (1000 * 60 * 60 * 24))% (1000 * 60 * 60);long yushu_minute = millisecond % (1000 * 60 * 60 * 24)% (1000 * 60 * 60) % (1000 * 60);@SuppressWarnings("unused")long yushu_second = millisecond % (1000 * 60 * 60 * 24)% (1000 * 60 * 60) % (1000 * 60) % 1000;if (yushu_day == 0) {return (millisecond / (1000 * 60 * 60 * 24)) + "天";} else {if (yushu_hour == 0) {return (millisecond / (1000 * 60 * 60 * 24)) + "天"+ (yushu_day / (1000 * 60 * 60)) + "时";} else {if (yushu_minute == 0) {return (millisecond / (1000 * 60 * 60 * 24)) + "天"+ (yushu_day / (1000 * 60 * 60)) + "时"+ (yushu_hour / (1000 * 60)) + "分";} else {return (millisecond / (1000 * 60 * 60 * 24)) + "天"+ (yushu_day / (1000 * 60 * 60)) + "时"+ (yushu_hour / (1000 * 60)) + "分"+ (yushu_minute / 1000) + "秒";}}}} catch (Exception e) {e.printStackTrace();}return time;
}

Java 时间差运算工具函数(时间戳运算)相关推荐

  1. 【工具】java 时间比较工具

    [工具]java 时间比较工具 需要依赖hutool /*** 比较时间* @param startDate 开始* @param endDate 结束* @param nowDate 当前* @re ...

  2. java时间日期工具类_java日期处理工具类

    java日期处理工具类 import java.text.DecimalFormat; import java.text.ParsePosition; import java.text.SimpleD ...

  3. java gps时间转换工具_java 时间戳和时间互转工具 和 时间偏移量计算

    时间互转代码片段: * 时间戳 转 时间 * * @param beginDate * @return * @see [类.类#方法.类#成员] */ public static String tim ...

  4. Java时间处理工具类(详细)

    目录 第一类: 第二类: 第一类: package com.chinamcloud.spiderMember.util;import org.apache.commons.lang3.StringUt ...

  5. java 时间转换工具类 yyyyMMdd HH:mm

    获取系统当前时间戳 : System.currentTimeMillis()) 获取系统当前时间任意格式,自己根据生成的格式选择性填写 /*** 获取当前时间* 把需要生成的时间格式替换一下就可以* ...

  6. 非常强大的java时间处理工具类!

    xk-time 是时间转换,时间计算,时间格式化,时间解析,日历,时间cron表达式和时间NLP等的工具,使用Java8,线程安全,简单易用,多达70几种常用日期格式化模板,支持Java8时间类和Da ...

  7. java时间日期工具类_java工具类--日期相关;

    日期相关 Date类 1.通常使用的是java.util包 2.导包 拿来使用 构建对象 3.通常使用无参数的构造方法 或者带long构造方法 4.Date类中常用的方法 before(); afte ...

  8. Java时间转换工具类

    /*** 获取对应毫秒转换成的天 时 分 秒 ms** @author 刘子固* @dete 2022.9.27*/ public class TimeDateUtils {/*** 一秒钟1000毫 ...

  9. java时间随机数_java开发代码工具类(时间戳/随机数/日期等)

    简介 java开发代码工具类,提高开发效率,持续更新~ 实践 package com.springboot.sixmonth.common.util; import java.math.BigInte ...

  10. java dateutil 获取时间戳_java DateUtil工具类时间戳类型转换详解

    本文实例为大家分享了DateUtil工具类时间戳类型转换的具体代码,供大家参考,具体内容如下 package com.sinosoft.media.sms.util; import java.text ...

最新文章

  1. Python Inotify 监视LINUX文件系统事件
  2. 表格隔行变色_CSS实现鼠标悬停高亮
  3. 使用Session防止表单重复提交
  4. 平面设计常用的图像文件格式
  5. Csv数据库CsvDb
  6. Open vSwitch(OVS)文档
  7. 资料员考试题库计算机,资料员考试试题库及答案(5套).docx
  8. 从孙子算经到中国剩余定理
  9. 编译原理教程_1 引论
  10. Jenkins教程(自动化部署)
  11. 关于爬虫学习的一些小小记录(二)——正则表达式匹配
  12. 小程序拨打电话功能,微信小程序点击手机号,拨打电话~!
  13. 【opencv】轮廓特征(质心,面积,周长,近似轮廓,凸包,凸度,边界矩形,直角矩形,旋转矩形,最小闭合圈,拟合椭圆、直线)
  14. 开发一款游戏需要服务器系统,搭建一个游戏服务器需要什么
  15. SQL UNION运算符
  16. C4D演绎中国风设计这波电商BANNER背景素材,高级了
  17. MySQL 8 复制(四)——GTID与复制
  18. 中国56个民族sql语句
  19. 我的大二下期学期计划
  20. 服务器占用内存高,单任务管理器查看每个程序占用都不高

热门文章

  1. 视频异常事件检测Object-centric Auto-encoders and Dummy Anomalies for Abnormal Event Detection in Video
  2. 其实带宽≠速度 ADSL加速法完全功略
  3. The semaphore timeout period has expired
  4. nuc7 android tv,7代NUC小白超高清体验NUC7I3BNH
  5. 性能常识 [踩坑总结] nf_conntrack: table full, dropping packet [新]
  6. STM32第二十一课(USB SLAVE, HAL)
  7. html5 图片上传进度条,html5异步上传图片显示上传文件进度条
  8. SQL对象名无效的解决
  9. C语言之迷宫小游戏2.0版(随机生成地图,可变颜色,优化游戏体验)
  10. 电脑屏幕亮度变暗、动态对比度问题,解决方法汇总