为什么DateTimeFormatter
与SimpleDateFormat
给出的结果不同?
String dateString = "0819-03-03";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(dateString);
System.out.println(sdf.format(date));
System.out.println(DateTimeFormatter.ISO_LOCAL_DATE.format(
ZonedDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault())
));
输出为:
0819-03-03 // SimpleDateFormat
0819-03-07 // DateTimeFormatter
我怀疑这与日期过长有关。