gpt4 book ai didi

java - 使用 Java 8 查找两个日期之间的中间日期

转载 作者:行者123 更新时间:2023-11-29 09:51:41 25 4
gpt4 key购买 nike

我发现听起来很难。

所以,我有一个最大日期和一个最小日期,我需要找到这两个日期之间的中间日期。我使用 Java 8 查找我的最大和最小日期,

LocalDate gerbutsmin = YearMonth.now().plusMonths(2).atDay(1);
LocalDate gerbutsmax = YearMonth.now().plusMonths(15).atDay(1);

在此之后我将如何继续?也许我需要切换回Calander?

最佳答案

尝试使用 DAYS.between():

LocalDate gerbutsmin = YearMonth.now().plusMonths(2).atDay(1);
LocalDate gerbutsmax = YearMonth.now().plusMonths(15).atDay(1);
long numDays = ChronoUnit.DAYS.between(gerbutsmin, gerbutsmax);
LocalDate median = gerbutsmin.plusDays(numDays / 2L); // plusDays takes a long
System.out.println(median);

2019-03-17
(output as of today, which is 2019-07-26)

Demo

如果您的最小日期和最大日期之间的差异为奇数,则存在边界条件。在这种情况下,没有正式的中位数日期,而是中位数会落在两天之间。

注意:

如果您想知道在边缘情况下到底发生了什么,如果最低日期是今天 (2018-07-26) 而最高日期是三天后 (2018-07 -29),则中位数将报告为 2018-07-27

关于java - 使用 Java 8 查找两个日期之间的中间日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51539709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com