Java简单计算两个日期月数差的方法

网友投稿 690 2023-05-10


Java简单计算两个日期月数差的方法

本文实例讲述了java简单计算两个日期月数差的方法。分享给大家供大家参考,具体如下:

/**

* 获取两个日期相差的月数

* @param d1 较大的日期

* @param d2 较小的日期

* @return 如果d1>d2返回 月数差 否则返回0

*/

public static int getMonthDiff(Date d1, Date d2) {

Calendar c1 = Calendar.getInstance();

Calendar c2 = Calendar.getInstance();

c1.setTime(d1);

c2.setTime(d2);

if(c1.getTimeInMillis() < c2.getTimeInMillis()) return 0;

int year1 = c1.get(Calendar.YEAR);

int year2 = c2.get(Calendar.YEAR);

http://int month1 = c1.get(Calendar.MONTH);

int month2 = c2.get(Calendar.MONTH);

int day1 = c1.get(Calendar.DAY_OF_MONTH);

int day2 = c2.get(Calendar.DAY_OF_MONTH);

// 获取年的差值 假设 d1 = 2015-BvWOi8-16 d2 = 2011-9-30

int yeBvWOiarInterval = year1 - year2;

// 如果 d1的 月-日 小于 d2的 月-日 那么 yearInterval-- 这样就得到了相差的年数

if(month1 < month2 || month1 == month2 && day1 < day2) yearInterval --;

// 获取月数差值

int monthInterval = (month1 + 12) - month2 ;

if(day1 < day2) monthInterval --;

monthInterval %= 12;

return yearInterval * 12 + monthInterval;

}

PS:这里BvWOi再为大家推荐几款关于日期与天数计算的在线工具供大家使用:

在线日期/天数计算器:

http://tools.jb51.net/jisuanqi/date_jisuanqi

在线万年历日历:

http://tools.jb51.net/bianmin/wannianli

在线阴历/阳历转换工具:

http://tools.jb51.net/bianmin/yinli2yangli

更多关于java相关内容感兴趣的读者可查看本站专题:《java日期与时间操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Kotlin this详解及实例
下一篇:详解Angular 4 表单快速入门
相关文章

 发表评论

暂时没有评论,来抢沙发吧~