java.util.Date 到 java.time.LocalDate 的转换
问题:
如何有效地将 java.util.Date 对象转换为较新的 java.time.LocalDate JDK 8/JSR-310 中引入的格式?
简答:
要实现转换,请使用以下代码:
Date input = new Date(); LocalDate date = input.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
Java 9 解决方案:
更高效的替代方案Java SE 9 中添加了:
Date input = new Date(); LocalDate date = LocalDate.ofInstant(input.toInstant(), ZoneId.systemDefault());
说明:
与它的名字所暗示的不同,java.util.Date 对象表示时间上的一个瞬间,而不是一个具体的日期。要将 java.util.Date 转换为兼容的 java.time.LocalDate,需要执行以下步骤:
此转换过程说明了 java.util.Date 不包含时区信息的事实。指定时区可以准确转换为特定的本地日期。
以上是如何高效地将java.util.Date转换为java.time.LocalDate?的详细内容。更多信息请关注PHP中文网其他相关文章!