Abd*_*ull 4 java java-8 java-time
如何将java.time.temporal.Temporal实例转换为java.util.Date实例?
java.time.temporal.Temporal someTemporal = Instant.now();
java.util.Date some Temporal = x(someTemporal);
Run Code Online (Sandbox Code Playgroud)
我已经看过Oracle的遗留时间跟踪文档,但找不到合适的解决方案.
我强烈建议不要引用任何对(太)通用接口的引用java.time.temporal.Temporal,只需这样做:
java.util.Date some = java.util.Date.from(Instant.now());
Run Code Online (Sandbox Code Playgroud)
使用界面Temporal几乎就像使用java.lang.Object.你应该尽可能具体(特别是在日期和时间的背景下).甚至JSR-310-API也正式输出警告:
此接口是框架级接口,不应在应用程序代码中广泛使用.相反,应用程序应创建并传递具体类型的实例,例如LocalDate.造成这种情况的原因有很多,其中一部分原因是此接口的实现可能在ISO之外的日历系统中.请参阅ChronoLocalDate以更全面地讨论这些问题.
小智 -1
底部有:
尽管 java.time.format.DateTimeFormatter 提供了用于格式化日期和时间值的强大机制,但您也可以将基于 java.time 时态的类直接与 java.util.Formatter 和 String.format 一起使用,使用相同的基于模式与 java.util 日期和时间类一起使用的格式。
看起来您可能想要使用 DateTimeFormatter 类,这里有文档,也许可以参考以下示例:
LocalDate date = LocalDate.now();
String text = date.format(formatter);
LocalDate parsedDate = LocalDate.parse(text, formatter);
Run Code Online (Sandbox Code Playgroud)