YYYY-MM-dd和yyyy-MM-dd的区别,用错了,问题很严重

    public static void main(String[] args) {

        String YYDate = DateUtil.format(new Date(), "YYYY-MM-dd");

        System.out.println("YYDate:"+YYDate);

        String yyDate = DateUtil.format(new Date(), "yyyy-MM-dd");

        System.out.println("yyDate:"+yyDate);
    }

正常情况下测试:
在这里插入图片描述
结果:

YYDate:2023-10-18
yyDate:2023-10-18

设置操作系统时间为2023-12-31测试:
YYYY-MM-dd和yyyy-MM-dd的区别,用错了,问题很严重_第1张图片
YYYY-MM-dd和yyyy-MM-dd的区别,用错了,问题很严重_第2张图片

测试结果:

YYDate:2024-12-31
yyDate:2023-12-31

为何不同?
SimpleDateFormat.java
YYYY-MM-dd和yyyy-MM-dd的区别,用错了,问题很严重_第3张图片
y是真正的年,而Y是只要那一周夸进了下一年,那么那一周的时间就变为下一年。比如上面的2023-12-31在2024年的周当中,所以当使用Y时就为2024

so,有谁在用Y直接拉去祭天吧。

你可能感兴趣的:(踩坑,java)