public static void main(String[] args) { Calendar calendar = Calendar.getInstance(); calendar.set(2021,Calendar.DECEMBER,31); Date testDate = calendar.getTime(); DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd"); System.out.println("2019-12-31 yyyy-MM-dd :"+format1.format(testDate)); DateFormat format2 = new SimpleDateFormat("YYYY-MM-dd"); System.out.println("2019-12-31 YYYY-MM-dd :"+format2.format(testDate)); }
2019-12-31 yyyy-MM-dd :2021-12-31
2019-12-31 YYYY-MM-dd :2022-12-31
原因
- y:year-of-era;正正经经的年;
- Y:week-based-year;只要本周跨年,那么这周就算入下一年;也就是 12 月
- DD 和 dd 也是不一样的
特此记录下 写代码要小心