simpleDateFormat日期格式转化中YYYY大小写的问题
下面误解
先前以为格式化日期时“YYYY”是不区分大小写的,只有“MM-dd”区分大小写。
导致工作中踩了一个很大的坑。这里记录一下:
代码
//模拟页面传进来的日期时间
String time = "2020-9-23";
SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd");
System.out.println("大写YYYY,2020-9-23 转化后 ===>"+sdf.format(sdf.parse(time)));
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
System.out.println("小写yyyy,2020-9-23 转化后 ===>"+sdf1.format(sdf1.parse(time)));
/**
* 结果:
*
* 大写YYYY,2020-9-23 转化后 ===>2020-12-29
* 小写yyyy,2020-9-23 转化后 ===>2020-09-23
* **/