import java.time.LocalDate; import java.time.Period; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAccessor;/*** 日期时间格式之间的相互转换*/ public class Demo {public static void main(String[] args) {//在这里传入需要解析的日期字符串格式,需要一一对应需要解析的字符串格式DateTimeFormatter d = DateTimeFormatter.ofPattern("yyyy年-M月-d日");//生成好formatter解析器后,就可以用于接收解析字符串了// DateTimeFormatter,只要创建的时候格式对应需要解析的字符串格式,都会生成自己特定的日期格式可以被LocalDate识别//解析字符串后获得,解析后的格式,此时可以被LocalDate识别如{},ISO resolved to 1888-06-06TemporalAccessor parse = d.parse("1888年-12月-16日");System.out.println(parse);//LocalDate parse方法,可以直接格式化 "1888-12-06"指定日期类型的字符串//但是无法解析1888-12-6 非指定格式的字符串//LocalDate 可以识别被DateTimeFormatter解析之后的特定格式LocalDate localDate = LocalDate.from(parse);System.out.println(localDate);//Period 用于计算日期之间的间隔, 年月日,Period pBetween = Period.between(localDate, LocalDate.now());System.out.println(pBetween);//Duration 用于计算时间间隔 时分秒,毫秒,纳秒//LocalDate 解析指定格式的字符串LocalDate localdate = LocalDate.parse("2021年4月11日", DateTimeFormatter.ofPattern("yyyy年M月d日"));System.out.println(localdate);} }