Java获取时间差(天数差,小时差,分钟差)代码示例
网上有很多博文是讲如何获取时间差的,我看了一下,多数是使用Calendar类来实现,但是都讲得比较乱,在这里我用SimpleDateFormat来实现,比较简单,我认为比较适合拿来用。
SimpleDateFormat 是一个以国别敏感的方式格式化和分析数据的具体类。 它允许格式化 (date -> text)、语法分析 (text -> date)和标准化。
SimpleDateFormat 允许以为日期-时间格式化选择任何用户指定的方式启动。 但是,希望用 DateFormat 中的 getTimeInstance、 getDateInstance 或 getDateTimeInstance 创建一个日期-时间格式化程序。 每个类方法返回一个以缺省格式化方式初始化的日期/时间格式化程序。 可以根据需要用 applyPattern 方法修改格式化方式。
首先我们先初始化我们的SimpleDateFormat
SimpleDateFormat simpleFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm");//如2016-08-10 20:40
1.计算天数差。
String fromDate = simpleFormat.format("2016-05-01 12:00");
String toDate = simpleFormat.format("2016-06-01 12:00");
long from = simpleFormat.parse(fromDate).getTime();
long to = simpleFormat.parse(toDate).getTime();
int days = (int) ((to - from)/(1000 * 60 * 60 * 24));
2.计算小时差
String fromDate = simpleFormat.format("2016-05-01 12:00");
String toDate = simpleFormat.format("2016-05-01 14:00");
long from = simpleFormat.parse(fromDate).getTime();
long to = simpleFormat.parse(toDate).getTime();
int hours = (int) ((to - from)/(1000 * 60 * 60));
3.计算分钟差:
String fromDate = simpleFormat.format("2016-05-01 12:00");
String toDate = simpleFormat.format("2016-05-01 12:50");
long from = simpleFormat.parse(fromDate).getTime();
long to = simpleFormat.parse(toDate).getTime();
int minutes = (int) ((to - from)/(1000 * 60));
总结
以上就是本文关于Java获取时间差(天数差,小时差,分钟差)代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:
如有不足之处,欢迎留言指出。
相关文章
java使用freemarker模板生成html再转为pdf
这篇文章主要为大家详细介绍了java如何使用freemarker模板生成html,再利用iText将生成的HTML转换为PDF文件,感兴趣的小伙伴可以参考下2025-04-04
详解json string转换为java bean及实例代码
这篇文章主要介绍了详解json string转换为java bean及实例代码的相关资料,这里提供实例代码帮助大家理解,需要的朋友可以参考下2017-07-07
springboot log4j2不能打印框架错误日志的解决方案
这篇文章主要介绍了springboot log4j2不能打印框架错误日志的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-08-08


最新评论