代码之家  ›  专栏  ›  技术社区  ›  raoulsson

比较两个日期实例是否引用同一天

  •  4
  • raoulsson  · 技术社区  · 15 年前

    我有两个JavaUTL日期的Java实例,我必须找出它们是否引用同一天。

    我可以用一种很难的方式做到这一点,把日期分开,比较日期,确保年份也匹配。

    既然这是一个很常见的问题,我希望有一个更容易的解决方案来解决这个问题。

    谢谢!

    3 回复  |  直到 9 年前
        1
  •  6
  •   Jon Skeet    15 年前

    实例 java.util.Date 参照 瞬间 及时。它们落在哪一天取决于你使用的时区。你可以使用 java.util.Calendar 在特定时区表示一个瞬间…

    …或者你可以用 Joda Time 相反,这是一个更好的API。不管怎样,你都必须知道你对哪个时区感兴趣。

    在Joda Time中,一旦你有了一个相关的时区,你就可以将两个瞬间都转换为 LocalDate 对象并进行比较。(这也意味着您可以比较时区A中的即时X是否与时区B中的即时Y在同一天,如果您希望…)

        2
  •  2
  •   t0r0X    9 年前

    我使用dateutils类 Apache Commons Lang 2 ,它提供了Issameday(日期、日期)方法。

    更新:

    这里链接到 Apache Commons Lang 3 .

        3
  •  0
  •   Community CDub    8 年前

    elsewhen on StackOverflow

    SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMdd");
    return fmt.format(date1).equals(fmt.format(date2));