java 獲取當(dāng)前時(shí)間的三種方法
總結(jié)java里面關(guān)于獲取當(dāng)前時(shí)間的一些方法
System.currentTimeMillis()
獲取標(biāo)準(zhǔn)時(shí)間可以通過(guò)System.currentTimeMillis()
方法獲取,此方法不受時(shí)區(qū)影響,得到的結(jié)果是時(shí)間戳格式的。例如:
1543105352845
我們可以將時(shí)間戳轉(zhuǎn)化成我們易于理解的格式
SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd 'at' HH:mm:ss z"); Date date = new Date(System.currentTimeMillis()); System.out.println(formatter.format(date));
則該時(shí)間戳對(duì)應(yīng)的時(shí)間為:
2018-11-25 at 01:22:12 CET
值得注意的是,此方法會(huì)根據(jù)我們的系統(tǒng)時(shí)間返回當(dāng)前值,因?yàn)槭澜绺鞯氐臅r(shí)區(qū)是不一樣的。
java.util.Date
在Java中,獲取當(dāng)前日期最簡(jiǎn)單的方法之一就是直接實(shí)例化位于Java包java.util的Date類。
Date date = new Date(); // this object contains the current date value
上面獲取到的日期也可以被format成我們需要的格式,例如:
SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss"); System.out.println(formatter.format(date));
Calendar API
Calendar類,專門用于轉(zhuǎn)換特定時(shí)刻和日歷字段之間的日期和時(shí)間。
使用Calendar 獲取當(dāng)前日期和時(shí)間非常簡(jiǎn)單:
Calendar calendar = Calendar.getInstance(); // gets current instance of the calendar
與date一樣,我們也可以非常輕松地format這個(gè)日期成我們需要的格式
SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss"); System.out.println(formatter.format(calendar.getTime()));
上面代碼打印的結(jié)果如下:
25-11-2018 00:43:39
Date/Time API
Java 8提供了一個(gè)全新的API,用以替換java.util.Date和java.util.Calendar。Date / Time API提供了多個(gè)類,幫助我們來(lái)完成工作,包括:
- LocalDate
- LocalTime
- LocalDateTime
- ZonedDateTime
- LocalDate
LocalDate只是一個(gè)日期,沒(méi)有時(shí)間。 這意味著我們只能獲得當(dāng)前日期,但沒(méi)有一天的具體時(shí)間。
LocalDate date = LocalDate.now(); // gets the current date
我們可以format它
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy"); System.out.println(date.format(formatter));
得到的結(jié)果只有年月日,例如:
25-11-2018
LocalTime
LocalTime與LocalDate相反,它只代表一個(gè)時(shí)間,沒(méi)有日期。 這意味著我們只能獲得當(dāng)天的當(dāng)前時(shí)間,而不是實(shí)際日期:
LocalTime time = LocalTime.now(); // gets the current time
可以按如下方式format
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss"); System.out.println(time.format(formatter));
得到的結(jié)果類似如下:
00:55:58
LocalDateTime
最后一個(gè)是LocalDateTime,也是Java中最常用的Date / Time類,代表前兩個(gè)累的組合 - 即日期和時(shí)間的值:
LocalDateTime dateTime = LocalDateTime.now(); // gets the current date and time
format的方式也一樣
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); System.out.println(dateTime.format(formatter));
得到的日期結(jié)果類似于:
25-11-2018 00:57:20
總結(jié)
以上所述是小編給大家介紹的java 獲取當(dāng)前時(shí)間的三種方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
- Java程序執(zhí)行時(shí)間的2種簡(jiǎn)單方法
- java獲取當(dāng)前時(shí)間和前一天日期(實(shí)現(xiàn)代碼)
- Java計(jì)算兩個(gè)程序運(yùn)行時(shí)間的實(shí)例
- Java計(jì)算程序代碼執(zhí)行時(shí)間的方法小結(jié)
- Java獲取當(dāng)前時(shí)間年月日的方法
- Java 獲取當(dāng)前系統(tǒng)時(shí)間的三種方法
- 教你使用Java獲取當(dāng)前時(shí)間戳的詳細(xì)代碼
- Java中如何計(jì)算一段程序的運(yùn)行時(shí)間
- Java怎么獲取當(dāng)前時(shí)間、計(jì)算程序運(yùn)行時(shí)間源碼詳解(超詳細(xì)!)
相關(guān)文章
MyBatis的JdbcType與Oracle、MySql數(shù)據(jù)類型一覽表
這篇文章主要介紹了MyBatis的JdbcType與Oracle、MySql數(shù)據(jù)類型一覽表,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01SpringCloud?Gateway?DispatcherHandler調(diào)用方法詳細(xì)介紹
我們第一個(gè)關(guān)注的類就是DispatcherHandler,這個(gè)類提供的handle()方法,封裝了我們之后所有的handlerMappings,這個(gè)DispatcherHandler有點(diǎn)想SpringMVC的DispatchServlet,里面也是封裝了請(qǐng)求和對(duì)應(yīng)的處理方法的關(guān)系2022-10-10Java 指定微信好友自動(dòng)發(fā)送消息的實(shí)現(xiàn)示例
這篇文章主要介紹了Java 指定微信好友自動(dòng)發(fā)送消息的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10Java利用Map實(shí)現(xiàn)計(jì)算文本中字符個(gè)數(shù)
這篇文章主要為大家詳細(xì)介紹了Java如何利用Map集合實(shí)現(xiàn)計(jì)算文本中字符個(gè)數(shù),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2022-08-08Java實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建類操作示例
這篇文章主要介紹了Java實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建類操作,結(jié)合完整示例形式分析了Java動(dòng)態(tài)創(chuàng)建類的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下2020-02-02Java通過(guò)URL獲取公眾號(hào)文章生成HTML的方法
這篇文章主要介紹了Java通過(guò)URL獲取公眾號(hào)文章生成HTML的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Spring?Boot攔截器和監(jiān)聽器實(shí)現(xiàn)對(duì)請(qǐng)求和響應(yīng)處理實(shí)戰(zhàn)
這篇文章主要介紹了Spring?Boot攔截器和監(jiān)聽器實(shí)現(xiàn)對(duì)請(qǐng)求和響應(yīng)處理實(shí)戰(zhàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06