Java8中 Date和LocalDateTime的相互转换
生活随笔
收集整理的這篇文章主要介紹了
Java8中 Date和LocalDateTime的相互转换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉載自??Java8中 Date和LocalDateTime的相互轉換
一.在Java 8中將Date轉換為LocalDateTime
方法1:
將Date轉換為LocalDatetime,我們可以使用以下方法:
1.從日期獲取ZonedDateTime并使用其方法toLocalDateTime()獲取LocalDateTime 2.使用LocalDateTime的Instant()工廠方法示例:
package insping;import java.time.Instant; import java.time.LocalDateTime; import java.time.ZoneId; import java.util.Date;public class Test {public static void main(String[] args) {Date date = new Date();Instant instant = date.toInstant();ZoneId zoneId = ZoneId.systemDefault();LocalDateTime localDateTime = instant.atZone(zoneId).toLocalDateTime();System.out.println("Date = " + date);System.out.println("LocalDateTime = " + localDateTime);} }結果:
Date = Fri Jun 16 15:35:26 CST 2017 LocalDateTime = 2017-06-16T15:35:26.970方法2:
我們也可以使用LocalDateTime的FactoryInput()方法使用系統的默認時區。
LocalDateTime localDateTime = LocalDateTime.ofInstant(date.toInstant(), zoneId);二.在Java 8中將LocalDateTime轉換為Date
要將LocalDateTime轉換回java.util.Date,我們可以使用以下步驟:
1.使用atZone()方法將LocalDateTime轉換為ZonedDateTime 2.將ZonedDateTime轉換為Instant,并從中獲取Date示例:
package insping;import java.time.LocalDateTime; import java.time.ZoneId; import java.time.ZonedDateTime; import java.util.Date;public class Test {public static void main(String[] args) {ZoneId zoneId = ZoneId.systemDefault();LocalDateTime localDateTime = LocalDateTime.now();ZonedDateTime zdt = localDateTime.atZone(zoneId);Date date = Date.from(zdt.toInstant());System.out.println("LocalDateTime = " + localDateTime);System.out.println("Date = " + date);} }結果:
LocalDateTime = 2017-06-16T15:38:48.580 Date = Fri Jun 16 15:38:48 CST 2017總結
以上是生活随笔為你收集整理的Java8中 Date和LocalDateTime的相互转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 正则表达式匹配模式[贪婪型、勉
- 下一篇: Java经典面试题一