当前位置: 首页 > 面试题库 >

如何使用java计算两个日期之间的差异

那绪
2023-03-14
问题内容

java.util.Date在Scala中使用Java的类,想比较一个Date对象和当前时间。我知道我可以使用getTime()计算增量:

(new java.util.Date()).getTime() - oldDate.getTime()

但是,这仅long代表我几毫秒。有没有更简单,更好的方法来获取时间增量?


问题答案:

Date不幸的是,JDK API严重损坏。我建议使用Joda时间库。

Joda Time具有时间间隔的概念:

Interval interval = new Interval(oldTime, new Instant());

编辑:顺便说一句,乔达有两个概念:Interval用于表示两个时刻之间的时间间隔(表示上午8点至上午10点之间的时间),以及Duration表示没有实际时间界限的时间长度(例如表示两个小时!)

如果您只关心时间比较,则大多数Date实现(包括JDK)都会实现Comparable接口,该接口可让您使用Comparable.compareTo()



 类似资料:
  • 问题内容: 我有两个日期格式: 现在,我需要以以下形式查找这两者之间的区别: 如何在PHP中做到这一点? 问题答案: 将此用于旧代码(PHP <5.3)。有关最新解决方案,请参见下面的jurka答案 您可以使用strtotime()将两个日期转换为Unix时间,然后计算它们之间的秒数。由此很容易计算出不同的时间段。 编辑: 显然,执行此操作的首选方法如下面的jurka所述。通常,仅当您没有PHP

  • 问题内容: 如何计算2010年1月1日至2010年2月3日之间的日期? 问题答案: 编辑: 请记住,对象表示确切的时刻,它们没有任何关联的时区信息。当您使用例如一个字符串转换为日期时,从配置的时区的时间转换。因此,两个对象之间的秒数 始终 是时区不可知的。 此外,本文档还指定可可的时间实现方式不包含leap秒,因此,如果您需要这种准确性,则需要滚动自己的实现方式。

  • 问题内容: 我在Scala中使用Java的类,想比较一个Date对象和当前时间。我知道我可以使用getTime()计算增量: 但是,这仅long代表我几毫秒。有没有更简单,更好的方法来获取时间增量? 问题答案: 不幸的是,JDK API严重损坏。我建议使用Joda时间库。 Joda Time具有时间间隔的概念: 编辑:顺便说一句,乔达有两个概念:用于表示两个时刻之间的时间间隔(表示上午8点至上午1

  • 问题内容: 有谁知道如何传递给定的变量,而不是Carbon的默认参数? Carbon的文档说: 我想在控制器中执行以下操作: 并在Blade模板上检索 问题答案: 您没有遵循Carbon文档中的示例。该方法需要4个参数: 年 , 月 , 日 和 时区 。您正在尝试传递格式化的日期字符串。 如果要从格式化的日期字符串创建Carbon对象,可以使用该类的构造函数,如下所示: 或者,您可以使用静态方法:

  • 问题内容: 我正在使用ES,并且我需要一个查询,该查询返回两个datetime(mysql timediff)之间的差,但是还没有找到ES的任何功能来做到这一点。有人可以帮助我吗? MySQL查询 谢谢! 问题答案: 最好的是脚本字段。如果您已启用动态脚本并且这些日期字段在映射中定义为日期,则上述搜索查询应该可以正常工作。 请注意,您将获得epoch的结果,您需要将其转换为面额。 您可以在此处阅读

  • 问题内容: 我在-type字段中将上次登录时间存储在MySQL中。当用户登录时,我想获取上次登录时间与当前时间(我使用)之间的时差。 我该如何计算? 问题答案: 使用MySQL函数。例如,您可以使用: 在您的情况下,函数的第三个参数将是当前登录时间()。第二个参数是上次登录时间,该时间已在数据库中。