提供 java.util.Date类和java.time.LocalDate类型之间的转换操作
时间: 2023-05-22 08:05:23 浏览: 184
你可以使用java.time.LocalDate类的静态方法toInstant()把它转换为java.util.Date类型,如下所示:
LocalDate localDate = LocalDate.now();
Date date = Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
而要将java.util.Date转换为java.time.LocalDate,可以使用toInstant()方法和TimeZone.getDefault()方法,如下所示:
Date date = new Date();
LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
相关问题
设计一个工具类,提供 java.util.Date类和java.time.LocalDate类型之间的转换操作
好的,我可以为您提供一个工具类,该工具类提供了两个静态方法,用于将java.util.Date类和java.time.LocalDate类型之间进行转换。
```java
import java.time.LocalDate;
import java.time.ZoneId;
import java.util.Date;
public class DateUtils {
public static LocalDate convertToLocalDate(Date date) {
return date.toInstant()
.atZone(ZoneId.systemDefault())
.toLocalDate();
}
public static Date convertToDate(LocalDate localDate) {
return Date.from(localDate.atStartOfDay()
.atZone(ZoneId.systemDefault())
.toInstant());
}
}
```
其中,convertToLocalDate方法接受一个java.util.Date参数,将其转换为对应的java.time.LocalDate类型,并返回。convertToDate方法接受一个java.time.LocalDate参数,将其转换为对应的java.util.Date类型,并返回。
使用方法如下:
```java
import java.time.LocalDate;
import java.util.Date;
public class Main {
public static void main(String[] args) {
Date date = new Date();
LocalDate localDate = DateUtils.convertToLocalDate(date);
System.out.println("Converted LocalDate: " + localDate);
LocalDate newLocalDate = LocalDate.of(2021, 4, 15);
Date newDate = DateUtils.convertToDate(newLocalDate);
System.out.println("Converted Date: " + newDate);
}
}
```
输出结果如下:
```
Converted LocalDate: 2021-04-15
Converted Date: Thu Apr 15 00:00:00 CST 2021
```
希望这个工具类能够帮助到您!
设计一个工具类,提供 java.util.Date类和java.time.LocalDate类型之间的转换操作并举出简单的例子
工具类代码如下:
```java
import java.time.LocalDate;
import java.time.ZoneId;
import java.util.Date;
public class DateUtils {
// 将java.util.Date类型转换为java.time.LocalDate类型
public static LocalDate dateToLocalDate(Date date) {
return date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
}
// 将java.time.LocalDate类型转换为java.util.Date类型
public static Date localDateToDate(LocalDate localDate) {
return Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
}
}
```
使用示例:
```java
import java.time.LocalDate;
import java.util.Date;
public class Main {
public static void main(String[] args) {
// 将java.util.Date类型转换为java.time.LocalDate类型
Date date = new Date();
LocalDate localDate = DateUtils.dateToLocalDate(date);
System.out.println(localDate);
// 将java.time.LocalDate类型转换为java.util.Date类型
LocalDate localDate2 = LocalDate.now();
Date date2 = DateUtils.localDateToDate(localDate2);
System.out.println(date2);
}
}
```
阅读全文