Java8中 LocalDateTime與Date互相轉換


Java8 LocalDateTime與Date互相轉換

1、Date轉化成LocalDateTime

    /**
     * LocalDateTime與Date互相轉換
     * 1、Date轉化成LocalDateTime
     */
    @Test
    void testLocalDateTime(){
        Date date = new Date();
        Instant instant = date.toInstant();
        ZoneId zoneId = ZoneId.systemDefault();

        //方式一
        ZonedDateTime zonedDateTime = instant.atZone(zoneId);
        LocalDateTime localDateTime = zonedDateTime.toLocalDateTime();

        //方式二 直接使用LocalDateTime.ofInstant
        LocalDateTime localDateTime1 = LocalDateTime.ofInstant(instant, zoneId);

        System.out.println("Date:" + date);
        System.out.println("LocalDateTime:" + localDateTime);
        System.out.println("localDateTime1:" + localDateTime1);
    }

運行結果:

Date:Tue Dec 15 19:53:21 CST 2020
LocalDateTime:2020-12-15T19:53:21.232
localDateTime1:2020-12-15T19:53:21.232

 

2、LocalDateTime轉化成Date

     /**
     * 2、LocalDateTime轉化成Date
     */
    @Test
    void testDate(){
        LocalDateTime localDateTime = LocalDateTime.now();
        ZoneId zoneId = ZoneId.systemDefault();
        ZonedDateTime zonedDateTime = localDateTime.atZone(zoneId);
        Instant instant = zonedDateTime.toInstant();
        Date date = Date.from(instant);
        System.out.println("LocalDateTime:" + localDateTime);
        System.out.println("Date:" + date);
    }

運行結果:

LocalDateTime:2020-12-15T19:56:58.022
Date:Tue Dec 15 19:56:58 CST 2020

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM