问题描述
- JAVA日期算法问题????
-
参数:开始时间、结束时间,时间格式:yyyy-MM-dd,可以考虑用UnixTime转换计算
前置条件:
1、每个月15日是定死的中间比对日期,即结算时间
2、开始时间必须是小于结束时间
需要解决的问题:
按输入的开始时间、结束时间,动态计算从开始时间到结束时间之间每个月与结算时间的相差天数,并且记录最后的结算日期
比如:
开始时间3月1日,结束时间5月10日,
3月1日至3月15日算一次天数,并且记录下3月15日,
然后开始时间变为3月15日,至4月15日算一次天数,并且记录下4月15日,
4月15日至5月10日计算一次天数,记录下5月10日
需要考虑到同一个月的问题:
比如:
开始时间是3月1日,结束时间是3月14日,
那么只有一个周期,直接计算3月1日至3月14日的天数,记录下3月14日
开始时间是3月16日,结束时间是4月14日,
那么只有一个周期,直接计算3月16日至4月14日的天数,记录下4月14日
还有跨年的情况
开始时间2014年12月28日,结束时间2015年1月14日,直接计算12月28日至1月14日的天数,记录下1月14日
还有开始时间等于每个月15号的情况
开始时间2015-01-15,结束时间2015-02-14,直接计算1月15至2月14日的周期天数,记录下2月14日的日期
暂时想到的这么多,请大家帮我想想怎样计算
解决方案
这个查查api 应该就可以。
时间: 2024-09-08 18:30:23