gpt4 book ai didi

Java DateTimeFormatter 问题

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

以下代码(在main中)

LocalDate d ;
DateTimeFormatter formatter;

d = LocalDate.of(2021, 11, 14);
System.out.println(d);

formatter = DateTimeFormatter.ofPattern("MM.dd.YYYY");
System.out.println(formatter.format(d));

formatter = DateTimeFormatter.ofPattern("YYYY/MM/dd");
System.out.println(formatter.format(d)+ "\n");

d = LocalDate.of(2021, 1, 1);
System.out.println(d);

formatter = DateTimeFormatter.ofPattern("MM.dd.YYYY");
System.out.println(formatter.format(d));

formatter = DateTimeFormatter.ofPattern("YYYY/MM/dd");
System.out.println(formatter.format(d));

使用最新或相当新的 Oracle Java 17 在我的 Netbeans 12.5 中输出

run:
2021-11-14
14.11.2021
2021/11/14

2021-01-01
01.01.2020
2020/01/01
BUILD SUCCESSFUL (total time: 0 seconds)

今天 14-NOV-2021 的格式化输出没问题,但 01-JAN-2021 的输出是错误的。格式化输出打印 2020 ,一年后。

你能重复一下吗?如果是这样:有什么想法为什么会发生这种情况吗?

最佳答案

根据java.time.format.DateTimeFormatter的Javadoc

  • y(小写)代表年代
  • Y(大写)代表基于周的年份

基于周的日期/时间系统在 ISO 8601 中定义(请参阅:Wikipedia article)。

关于Java DateTimeFormatter 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69962382/

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