这很难解释,但是
我有2个日期,除非这2个日期具有相同的年份,否则我会对日期和月份感兴趣
2015/12/30和2019/01/04
忽略上面预计的两个日期的结果的年份部分(种类)
如果我要使用date.DayOfYear我将分别获得364(2015/12/30)和4(2019/01/04)
如果年份相同,那么 2019/01/04 2019/12/30然后我期望的结果是359天的差异
是否有一种聪明的方法可以在不添加if语句的情况下完成代码?
答案 0 :(得分:0)
如果年差仅为0或1,则可以将两个日期都转换为绝对值(以秒,ms,unix时间或其他任何形式),减去2的值并将其转换为整天。但是,如果您有超过1年的差异(如2015年和2019年),那么您就必须“如果”考虑您实际上在做什么。您不应该使用DayOfYear,因为有些年份有366天,因此不能确定364对应于该年剩余的1或2天。