国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java時(shí)間類總結(jié)

coolpail / 2130人閱讀

摘要:獲取當(dāng)天是幾號(hào)獲取當(dāng)天是星期幾獲取本月的第一天取本月最后一天是不是很贊提供時(shí)分秒不提供年月日,也是線程安全并且不可變類。樣例獲取當(dāng)前的小時(shí)小時(shí)數(shù)加結(jié)果包含年月日時(shí)分秒,精確到納秒級(jí)別,同樣是線程安全并且不可變類。

java.util.Date

包含有年月日時(shí)分秒,精確到毫秒級(jí)別。
官方解釋:

// The class Date represents a specific instant in time, with millisecond precision.
// 語句
Date date = new Date();
System.out.println(date);

//輸出結(jié)果
Sat Feb 03 14:48:47 CST 2018
java.sql.Date

包含年月日,時(shí)分秒都被設(shè)置為0,之所以這樣設(shè)計(jì)是為了適應(yīng)SQL中的DATE類型。
官方解釋:

// A thin wrapper around a millisecond value that allows JDBC to identify this as an SQL DATE value. A milliseconds value represents the number of milliseconds that have passed since January 1, 1970 00:00:00.000 GMT.
// To conform with the definition of SQL DATE, the millisecond values wrapped by a java.sql.Date instance must be "normalized" by setting the hours, minutes, seconds, and milliseconds to zero in the particular time zone with which the instance is associated.

注意,雖然說這個(gè)類是使用年月日的,但是初始化的時(shí)候,需要一個(gè)long類型的參數(shù),這個(gè)參數(shù)代表著January 1, 1970, 00:00:00 GMT到某個(gè)時(shí)間的毫秒數(shù)。如果是當(dāng)前時(shí)間的話,可以用System.currentTimeMillis()或者new Date().getTime()獲取。

// 語句
java.sql.Date sqlDate = new java.sql.Date(System.currentTimeMillis());
System.out.println(sqlDate);

// 輸出結(jié)果
2018-02-03
java.sql.Time

包含時(shí)分秒,這個(gè)也是為了SQL中的TIME類型而出現(xiàn)的。

// 語句
Time time = new Time(System.currentTimeMillis());
System.out.println(time);

// 輸出結(jié)果
15:07:35
java.sql.Timestamp

時(shí)間戳,適配于SQL中的TIMESTAMP類型而出現(xiàn)的,精確到納秒級(jí)別。

格式化輸出:java.text.SimpleDateFormat

這個(gè)類提供時(shí)間的各種格式化輸出和將字符串轉(zhuǎn)換為時(shí)間類,簡(jiǎn)單來說,它擁有date → text 以及text → date的能力。
例如:將Date格式化輸出

    // 格式化輸出
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日  HH:mm:ss");
    String dateStr = sdf.format(new Date());
    System.out.println(dateStr);

    // 結(jié)果
    2018年02月03日  15:20:58

例如:將時(shí)間字符串轉(zhuǎn)化為Date

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日  HH:mm:ss");
    Date date = sdf.parse("2018年02月03日  15:20:58");

注意,SimpleDateFormat.parse(String source)中的source格式一定得是SimpleDateFormat當(dāng)前使用的格式。如這個(gè)例子中使用了yyyy年MM月dd日 HH:mm:ss,所以傳入了2018年02月03日 15:20:58時(shí)間字符串。
PS:有些同學(xué)對(duì)yyyy或者MM這些字母代表的含義不懂的話,建議使用這個(gè)類的時(shí)候,看一下源碼,源碼類上都有對(duì)這些字母的解釋。

java.util.Calendar

日歷類,這個(gè)類大多被用于獲取時(shí)間的特殊屬性,比如說獲取某個(gè)時(shí)間對(duì)象的年份、月份、星期等

    Calendar calendar = Calendar.getInstance();
    // 設(shè)置時(shí)間,不設(shè)置的話,默認(rèn)是當(dāng)前時(shí)間
    calendar.setTime(new Date());
    // 獲取時(shí)間中的年份
    int year = calendar.get(Calendar.YEAR);

從JDK1.8開始,Calendar增加新的構(gòu)造方式

    // since jdk 1.8
    Calendar calendar = new Calendar.Builder().setDate(2018, 3, 25).build();
    int year = calendar.get(Calendar.YEAR);
    System.out.println(year);
階段小結(jié)

以上大概就是jdk1.8之前的操作時(shí)間方式了。然后,從jdk1.8開始,有了新的操作時(shí)間的類。

java.time.LocalDate

LocalDate提供年月日而不提供時(shí)分秒信息,它是不可變類且線程安全的。它經(jīng)常被用于展示year-month-day,day-of-year,day-of-week,week-of-year等格式的信息。

        LocalDate localDate = LocalDate.now();
        // 獲取當(dāng)天是幾號(hào)
        int dayOfMonth = localDate.getDayOfMonth();
        // 獲取當(dāng)天是星期幾
        DayOfWeek dayOfWeek = localDate.getDayOfWeek();
        
        // 獲取本月的第一天
        LocalDate firstDayOfMonth = localDate.with(TemporalAdjusters.firstDayOfMonth());
        // 取本月最后一天
        LocalDate lastDayOfThisMonth = localDate.with(TemporalAdjusters.lastDayOfMonth());

是不是很贊~

java.time.Time

提供時(shí)分秒不提供年月日,也是線程安全并且不可變類。它經(jīng)常被用于展示hour-minute-second格式的信息。可以對(duì)時(shí)間進(jìn)行加減等操作。

        // 樣例
        LocalTime localTime = LocalTime.now();
        // 獲取當(dāng)前的小時(shí)
        int hour = localTime.getHour();
        System.out.println(hour);
        // 小時(shí)數(shù)加1
        LocalTime addTwoHours = localTime.plusHours(2L);
        System.out.println(addTwoHours.getHour());

        // 結(jié)果
        16
        18
java.time.LocalDateTime

包含年月日時(shí)分秒,精確到納秒級(jí)別,同樣是線程安全并且不可變類。它可以操作時(shí)間中的年月日時(shí)分秒并且可以獲取其中的屬性。

        LocalDateTime localDateTime = LocalDateTime.now();
        // 獲取年
        int year = localDateTime.getYear();
        // 獲取小時(shí)
        int hour = localDateTime.getHour();
        // 增加一年
        LocalDateTime addOneYear = localDateTime.plusYears(1);
結(jié)語

今天就先這樣啦,希望看到這篇博文的人能有所收獲,同樣,錯(cuò)誤之處還請(qǐng)幫忙指正。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/70930.html

相關(guān)文章

  • Java 總結(jié)

    摘要:中的詳解必修個(gè)多線程問題總結(jié)個(gè)多線程問題總結(jié)有哪些源代碼看了后讓你收獲很多,代碼思維和能力有較大的提升有哪些源代碼看了后讓你收獲很多,代碼思維和能力有較大的提升開源的運(yùn)行原理從虛擬機(jī)工作流程看運(yùn)行原理。 自己實(shí)現(xiàn)集合框架 (三): 單鏈表的實(shí)現(xiàn) 自己實(shí)現(xiàn)集合框架 (三): 單鏈表的實(shí)現(xiàn) 基于 POI 封裝 ExcelUtil 精簡(jiǎn)的 Excel 導(dǎo)入導(dǎo)出 由于 poi 本身只是針對(duì)于 ...

    caspar 評(píng)論0 收藏0
  • Java線程池簡(jiǎn)單總結(jié)

    摘要:本文主要內(nèi)容為簡(jiǎn)單總結(jié)中線程池的相關(guān)信息。方法簇方法簇用于創(chuàng)建固定線程數(shù)的線程池。三種常見線程池的對(duì)比上文總結(jié)了工具類創(chuàng)建常見線程池的方法,現(xiàn)對(duì)三種線程池區(qū)別進(jìn)行比較。 概述 線程可認(rèn)為是操作系統(tǒng)可調(diào)度的最小的程序執(zhí)行序列,一般作為進(jìn)程的組成部分,同一進(jìn)程中多個(gè)線程可共享該進(jìn)程的資源(如內(nèi)存等)。在單核處理器架構(gòu)下,操作系統(tǒng)一般使用分時(shí)的方式實(shí)現(xiàn)多線程;在多核處理器架構(gòu)下,多個(gè)線程能夠...

    CoorChice 評(píng)論0 收藏0
  • 后臺(tái)開發(fā)常問面試題集錦(問題搬運(yùn)工,附鏈接)

    摘要:基礎(chǔ)問題的的性能及原理之區(qū)別詳解備忘筆記深入理解流水線抽象關(guān)鍵字修飾符知識(shí)點(diǎn)總結(jié)必看篇中的關(guān)鍵字解析回調(diào)機(jī)制解讀抽象類與三大特征時(shí)間和時(shí)間戳的相互轉(zhuǎn)換為什么要使用內(nèi)部類對(duì)象鎖和類鎖的區(qū)別,,優(yōu)缺點(diǎn)及比較提高篇八詳解內(nèi)部類單例模式和 Java基礎(chǔ)問題 String的+的性能及原理 java之yield(),sleep(),wait()區(qū)別詳解-備忘筆記 深入理解Java Stream流水...

    spacewander 評(píng)論0 收藏0
  • 后臺(tái)開發(fā)常問面試題集錦(問題搬運(yùn)工,附鏈接)

    摘要:基礎(chǔ)問題的的性能及原理之區(qū)別詳解備忘筆記深入理解流水線抽象關(guān)鍵字修飾符知識(shí)點(diǎn)總結(jié)必看篇中的關(guān)鍵字解析回調(diào)機(jī)制解讀抽象類與三大特征時(shí)間和時(shí)間戳的相互轉(zhuǎn)換為什么要使用內(nèi)部類對(duì)象鎖和類鎖的區(qū)別,,優(yōu)缺點(diǎn)及比較提高篇八詳解內(nèi)部類單例模式和 Java基礎(chǔ)問題 String的+的性能及原理 java之yield(),sleep(),wait()區(qū)別詳解-備忘筆記 深入理解Java Stream流水...

    xfee 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

coolpail

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<