【问题标题】:How to calculate number of decades between two dates如何计算两个日期之间的十年数
【发布时间】:2014-10-06 05:49:00
【问题描述】:

有一些简单的方法可以计算两个 NSDate 对象之间的天数/月数/年数。日期可以按如下方式完成(来自苹果文档:https://developer.apple.com/library/ios/documentation/cocoa/Conceptual/DatesAndTimes/Articles/dtCalendricalCalculations.html

但我想计算两个 NSDate 对象之间的十年数。有什么指点吗?

例如,1970 年 1 月 1 日至 1987 年 5 月 5 日有两个十年,即 1970-1979 和 1980-1989。

【问题讨论】:

  • 从第二个减去较大日期的年份,然后除以 10,然后在结果上使用上限将给出多少个十年。
  • 那么从 1979 年到 1981 年有多少个十年?以及什么时候是一个十年的结束(1970 是 1961 到 1970 的十年,1987 是 1981 到 1990 的十年)。

标签: ios objective-c nsdate nsdatecomponents


【解决方案1】:

@Abbath 的回答会给你一个 1 的值(因此是两个日期之间的整数年数)。

听起来您实际上希望示例中的答案是 2,对于 70 年代和 80 年代,即使不包括 80 年代的整个十年。

如果您ceil 得到结果而不是铺平它,那应该会给您正在寻找的答案。

【讨论】:

    猜你喜欢
    • 2018-03-04
    • 2012-01-06
    • 2012-12-13
    • 1970-01-01
    • 2022-01-14
    • 2021-07-08
    • 1970-01-01
    • 2018-11-18
    相关资源
    最近更新 更多