gpt4 book ai didi

java - 根据给定的年龄找出人们的最小生日?

转载 作者:行者123 更新时间:2023-12-01 22:48:37 25 4
gpt4 key购买 nike

在我的应用中,我想根据年龄范围过滤数据。问题是我没有将年龄存储在数据库中,所以我必须使用生日。

这是我到目前为止所做的,但它是不正确的:

public String getDOBFromAge(int age){
LocalDate today = LocalDate.now();
LocalDate ld = today.minusYears(age);
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
return ld.format(dtf);
}

当我的 age=23 时,它会给出 1999-12-20 的输出。截至 2022-12-20,我今年 23 岁,但我的生日是 1999-11-24。所以我的解决方案缺少一些东西。谁能帮帮我?

最佳答案

假设您今年 23 岁。例如,一个 23 岁的人的年龄范围是 23 岁零 0 天到 23 岁 364 天。在此天数范围内,年龄为 23 岁。因此,最小生日适用于 23 岁零 364 天的人。

下面的代码会让你发现:

public static String getDOBFromAge(int age){
LocalDate today = LocalDate.now();
LocalDate ld = today.minusYears(age+1);
ld = ld.plusDays(1);
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
return ld.format(dtf);
}

关于java - 根据给定的年龄找出人们的最小生日?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74859459/

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