LocalDate date = LocalDate.now();
System.out.println("date :" + date );//default format is yyyy-MM-dd
System.out.println(date.getClass().getName());//java.time.LocalDate
如何使用以下格式将上述date
格式化为LocalDate
类型
dd-MM-yyyy
。但是您可以使用字符串日期模式,即dd-MM-yyyy
。输出应仅为LocalDate
类型。
答案 0 :(得分:3)
此功能不是LocalDate
类的责任,该类是表示日期的不可变日期时间对象。它的职责不是在乎String格式的表示形式。
要生成或解析字符串,请使用DateTimeFormatter
类。
DateTimeFormatter pattern = DateTimeFormatter.ofPattern("dd-MM-yyyy");
String string = date.format(pattern);
返回LocalDate
,使用相同的模式:
LocalDate dateParsed = LocalDate.parse(string, pattern);
但是新的dateParsed
将再次转换为其默认的String表示形式,因为LocalDate
会覆盖toString()
方法。这是文档所说的:
输出将采用ISO-8601格式uuuu-MM-dd。
您可能想要实现自己的此类的装饰器,以处理格式。