Java,计算两个日期之间的天数

新手上路,请多包涵

可能重复:

计算两个 Java 日期实例之间的差异

在 Java 中,我想计算两个日期之间的天数。

在我的数据库中,它们存储为 DATE 数据类型,但在我的代码中它们是字符串。

我想计算这两个字符串之间的天数。

原文由 sgrgmngt 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 534
2 个回答

注意:这个答案写于 2011 年。我建议现在使用 java.time 而不是 Joda Time。

首先,您应该 在必要时将它们作为字符串处理。大多数时候,您应该以一种实际描述您正在使用的数据的数据类型来使用它们。

我建议您使用 Joda Time ,这是比 Date / Calendar 更好的 API。在这种情况下,听起来您应该使用 LocalDate 类型。然后你可以使用:

 int days = Days.daysBetween(date1, date2).getDays();

原文由 Jon Skeet 发布,翻译遵循 CC BY-SA 4.0 许可协议

Java 8 及更高版本: ChronoUnit.between

使用 ChronoUnit 的实例来计算不同单位(天、月、秒)的时间量。

例如:

 ChronoUnit.DAYS.between(startDate,endDate)

原文由 javaLearner 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题