Java LocalDateTime,DateTimeFomatter----JDK8新時間類的簡單使用


JDK8中增加了一系列時間的類,

(據說)是為了干掉過去的Date,Calendar類的,

過去的Date類(據說)有着線程不安全等諸多弊端,

至於我的個人感受就是用起來實在是很麻煩,我一般封裝成幾個常用的方法以后每次就調方法,再也不想看里面是怎么實現的了.

而發現了LocalDateTime這種新類以后,經過我的簡單的試用,覺得完全可以取代掉之前使用時間的一切方法.非常好用,太好用了.

下面是簡單的使用教程:

1,按照自由格式獲取當前時間

public static String getTodayByFormat(String timeFormat){
        return LocalDateTime.now().format(DateTimeFormatter.ofPattern(timeFormat));
    }

簡直優雅,甚至我都不想封裝成方法了,想用隨時寫,就是這么容易.

2,獲取當前年/月/日

一張圖說明,想怎么取,想怎么拼,都隨便

3,獲取前一天

從前我的笨方法是:

public static String getYesterdayByFormat(String timeFormat){
        //獲取當前日期
        Date date = new Date();
        SimpleDateFormat sf = new SimpleDateFormat(timeFormat);
        //通過秒獲取下一天日期
        long time = (date.getTime() / 1000) - 60 * 60 * 24;//
        date.setTime(time * 1000);//毫秒
        String yesterday = sf.format(date).toString();
        return yesterday;
    }

如今有了新方法:

public static String getYesterdayByFormat(String timeFormat){
        return LocalDateTime.now().plusDays(1).format(DateTimeFormatter.ofPattern(timeFormat));
    }

同理,我都不想為獲取X天后/X小時后單獨寫方法了,就在下面(以增加為例):

返回值是LocalDateTime,也就意味着可以一直鏈式點下去,想要多少天以后的數據盡管開口,一句寫不完算我輸.

 4,獲取已經度過的毫秒/秒

為啥一個是to一個是get我也不是很明白

 

其他更多的我還沒用,感覺用不到了,有需要再去查就是了.


免責聲明!

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



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