将Date转换为LocalDatetime
//方法1:
//1.从日期获取ZonedDateTime并使用其方法toLocalDateTime()获取LocalDateTime
//2.使用LocalDateTime的Instant()工厂方法
Date date = new Date();
Instant instant = date.toInstant();
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime localDateTime = instant.atZone(zoneId).toLocalDateTime();
System.out.println("LocalDateTime = " + localDateTime);
//方法2:
//也可以使用LocalDateTime的FactoryInput()方法使用系统的默认时区。
LocalDateTime localDateTime2 = LocalDateTime.ofInstant(date.toInstant(), zoneId);
System.out.println("LocalDateTime2 = " + localDateTime2);
将LocalDateTime转换为Date
//1.使用atZone()方法将LocalDateTime转换为ZonedDateTime
//2.将ZonedDateTime转换为Instant,并从中获取Date
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime localDateTime = LocalDateTime.now();
ZonedDateTime zdt = localDateTime.atZone(zoneId);
Date date = Date.from(zdt.toInstant());
System.out.println("Date = " + date);