gpt4 book ai didi

java - 我怎样才能得到只有年份列表对话框

转载 作者:行者123 更新时间:2023-12-01 09:33:40 25 4
gpt4 key购买 nike

我想创建一个仅显示年份的列表选择器。

但我希望明年能够自动增加当前年份。

我尝试使用 DatePicker 执行此操作,但它不只显示年份选择器。

我怎样才能做到这一点?

最佳答案

使用java.time

使用 java.time 类,它是麻烦的旧遗留日期时间类的现代替代品。

确定年份就意味着确定日期。确定日期需要时区。对于任何特定时刻,全局各地的日期都会因地区而异。例如,法国巴黎午夜过后几分钟就是新的一天,而魁北克蒙特利尔仍然是“昨天”。

如果未指定,则应用 JVM 当前的默认时区。即使在运行时,该默认值也会有所不同。因此最好始终明确指定您想要/预期的时区。

ZoneId z = ZoneId.of( "America/Montreal" );

由于您只需要年份,因此时区问题显然仅适用于年底/年初。但您也可以将其编程为全年 365 或 366 天正常工作。

本地日期

LocalDate类表示仅日期值,没有时间和时区。

LocalDate ld = LocalDate.now( z );

最后查询年份。

int year = ld.getYear();

计算明年和去年。

int nextYear = ( year + 1 );
int lastYear = ( year - 1 );

现在使用这些值来显示数字选择器。

关于java.time

java.time框架内置于 Java 8 及更高版本中。这些类取代了旧的麻烦的日期时间类,例如 java.util.Date、.Calendar 和 java.text.SimpleDateFormat。

Joda-Time项目,现在位于 maintenance mode ,建议迁移到 java.time。

要了解更多信息,请参阅 Oracle Tutorial 。并在 Stack Overflow 上搜索许多示例和解释。

许多 java.time 功能已向后移植到 ThreeTen-Backport 中的 Java 6 和 7并进一步改编为AndroidThreeTenABP (参见How to use…)。

ThreeTen-Extra项目通过附加类扩展了 java.time。该项目是 java.time future 可能添加的内容的试验场。

关于java - 我怎样才能得到只有年份列表对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39175202/

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