【问题标题】:Calculate months between actually month and a specific one [duplicate]计算实际月份和特定月份之间的月份[重复]
【发布时间】:2015-04-13 01:06:08
【问题描述】:

我有一个小问题。如何计算当前月份和另一个给定月份之间的月份?例如:现在是二月,我想知道二月和一月之间有多少个月。有没有干净的方法来做到这一点?

【问题讨论】:

  • 需要澄清:假设现在是 12 月,而您想要从该月到 1 月之间的月数。答案是 1 还是 11?
  • 是的,有很多方法可以做到这一点,你试过了吗?
  • 如果是十二月,一月之间的数字应该是1。
  • 但是如果不考虑年份或做出一些额外的假设,您将无法正确获取此信息。如果当前月份是 2 月,指定的月份是 12 月,你怎么知道结果应该是 2 还是 10?
  • 检查我的伪代码答案(因为您没有指定任何编程语言)。区别是: (oy*12 - om) - (cy*12 - cm) 其中cy 是当前年份,oY 是另一年,cm 是当前月份,om 是另一个月份,@ 987654325@编辑:没关系,刚看到你加了c#

标签: c# datetime timespan


【解决方案1】:

假设您的月份编码如下:

Jan = 1
...
Dec = 12,

区别在于:

int difference = m2 >= m1 ? m2 - m1 : 12 + m2 - m1;

其中 m1 - 第一个月和 m2 - 另一个。

【讨论】:

    猜你喜欢
    • 2012-03-22
    • 1970-01-01
    • 2015-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-25
    相关资源
    最近更新 更多