首页 > 解决方案 > 如何计算日期天数差异,而不是秒?

问题描述

例如我有两个日期:

2018-11-30 18:00:00
2018-12-01 00:00:00

你怎么能看到,少于 24 小时的差异,但我需要认识到一天的差异,我不能只是减去月份变化的原因。在输出中我需要返回整数天数。

在 c# 中,它只是:

(EndDate - StartDate).TotalDays

哪些 Java 代码会相似?

我在问之前搜索了某个地方,但这并没有解决问题。这是我搜索后的尝试:

DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime d1 = LocalDateTime.parse("2018-11-30 18:00:00", dtf);
LocalDateTime d2 = LocalDateTime.parse("2018-12-01 00:00:00", dtf);
long days = ChronoUnit.DAYS.between(d1, d2);
System.out.println("Days: " + days); // Days: 0

我希望获得 1 天的差异。

标签: javadate

解决方案


推荐阅读