[copy] Java – Convert LocalDate to Date
在本指南中,我们将了解如何将 LocalDate 转换为 Date。在查看转换代码之前,让我们先看看 Date 和 LocalDate 之间有什么区别。
java.util.Date - date + time + timezone
java.time.LocalDate - only date
因此,要将 LocalDate 转换为 Date,我们必须在日期后附加时间和时区信息。考虑到这一点,转换步骤如下:
- 获取默认时区,以便在日期中附加时区信息
- 调用 atStartOfDay(),以便将时间与日期附加在一起
- LocalDate to Date - local date + atStartOfDay() + 默认时区(default time zone) + toInstant() = Date
LocalDate to Date conversion
import java.time.LocalDate;
import java.time.ZoneId;
import java.util.Date;
public class Example {
public static void main(String[] args) {
//default time zone
ZoneId defaultZoneId = ZoneId.systemDefault();
//creating the instance of LocalDate using the day, month, year info
LocalDate localDate = LocalDate.of(2016, 8, 19);
//local date + atStartOfDay() + default time zone + toInstant() = Date
Date date = Date.from(localDate.atStartOfDay(defaultZoneId).toInstant());
//Displaying LocalDate and Date
System.out.println("LocalDate is: " + localDate);
System.out.println("Date is: " + date);
}
}
Output:
LocalDate is: 2016-08-19
Date is: Fri Aug 19 00:00:00 IST 2016
Related Posts:
https://beginnersbook.com/2017/10/java-convert-localdate-to-date/