日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用LocalDate,LocalTime和LocalDateTime

發(fā)布時間:2023/12/3 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用LocalDate,LocalTime和LocalDateTime 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Java 8對日期和時間API進(jìn)行了重大更改,這是在JSR 310:日期和時間API的 JDK中包括了Joda Time API 。 此JSR由Joda Time的創(chuàng)建者Stephen Colebourne領(lǐng)導(dǎo)。

有許多驚人的API可用于日期和時間。 在本文中,我將介紹最常用的: java.time.LocalDate , java.time.LocalTime和java.time.LocalDateTime 。 這些代表獨(dú)立于時區(qū)的日期和時間值。 因此,它們依靠系統(tǒng)時鐘來捕獲值。

創(chuàng)建一個實例

讓我們來看看使用創(chuàng)建它們的實例的方式now()方法和工廠方法of()

jshell> LocalDate.now() $46 ==> 2018-07-07jshell> LocalDate.of(2018, 3, 30) $47 ==> 2018-03-30jshell> LocalTime.now() $48 ==> 00:32:06.883656jshell> LocalTime.of(12,43,12,33333); $49 ==> 12:43:12.000033333jshell> LocalDateTime.now() $50 ==> 2018-07-07T00:32:30.335562400jshell> LocalDateTime.of(2018, 12, 30, 12,33) $51 ==> 2018-12-30T12:33jshell> LocalDateTime.of(LocalDate.now(), LocalTime.now()) $52 ==> 2018-07-07T00:40:38.198318200

處理日期和時間

讓我們看一下如何操作或修改創(chuàng)建的日期和時間實例:

jshell> LocalDate d = LocalDate.now() d ==> 2018-07-07jshell> d.plusDays(12) $54 ==> 2018-07-19jshell> d d ==> 2018-07-07jshell> d.plusMonths(2) $56 ==> 2018-09-07jshell> d.minusDays(5) $57 ==> 2018-07-02jshell> d.minusWeeks(4) $58 ==> 2018-06-09

這些plus*()和minus*()方法是不可變的,并返回一個新的日期和時間實例。 在上面的示例中,我們看到了幾種方法來操縱java.time.LocalDate的組件。 在類似的行上,有plus*()和minus*()方法用于處理java.time.LocalTime和java.time.LocalDateTime的組件。

比較日期和時間實例

我們想知道給定的日期和時間是在另一個日期之前還是之后,在這種情況下,我們將使用isBefore()和isAfter()方法,如下所示:

jshell> var d1 = LocalDate.of(2018, 7, 6) d1 ==> 2018-07-06jshell> var d2 = LocalDate.of(2018, 7, 7) d2 ==> 2018-07-07jshell> d1.isAfter(d2) $64 ==> falsejshell> d1.isBefore(d2) $65 ==> truejshell> var dt1 = LocalDateTime.of(2018, 7, 7, 12, 30) dt1 ==> 2018-07-07T12:30jshell> var dt2 = LocalDateTime.of(2018, 7, 7, 14, 30) dt2 ==> 2018-07-07T14:30jshell> dt1.isBefore(dt2) $68 ==> truejshell> dt1.isAfter(dt2) $69 ==> false

在字符串和日期對象表示之間轉(zhuǎn)換

通常,我們需要將日期和時間的String表示形式轉(zhuǎn)換為其相應(yīng)的對象,并且還將該對象轉(zhuǎn)換為String表示形式。 對于較舊的日期類java.util.Date我們使用java.text.SimpleDateFormat解析字符串為日期,反之亦然。 在新的日期時間API中,為同一任務(wù)引入了新類java.time.format.DateTimeFormatter 。

如果遵循在字符串和對象表示形式之間轉(zhuǎn)換日期的ISO標(biāo)準(zhǔn),由于java.time.format.DateTimeFormatter提供了預(yù)定義的ISO格式,因此圖層和應(yīng)用程序之間的許多集成將變得無縫。 讓我們看一下實際情況:

jshell> import java.time.*jshell> LocalDateTime ldt = LocalDateTime.now() ldt ==> 2018-09-26T22:58:32.229096300jshell> import java.time.format.*jshell> ldt.format(DateTimeFormatter.ISO_DATE) $4 ==> "2018-09-26"jshell> ldt.format(DateTimeFormatter.ISO_DATE_TIME) $5 ==> "2018-09-26T22:58:32.2290963"jshell> ldt.format(DateTimeFormatter.ISO_LOCAL_DATE_TIME) $9 ==> "2018-09-26T22:58:32.2290963"jshell> ldt.format(DateTimeFormatter.BASIC_ISO_DATE) $10 ==> "20180926"

我們甚至可以使用自定義格式設(shè)置模式,如下所示:

jshell> ldt.format(DateTimeFormatter.ofPattern("d-M-y")); $11 ==> "26-9-2018"jshell> ldt.format(DateTimeFormatter.ofPattern("d-MM-y hh:mm:ss")); $12 ==> "26-09-2018 10:58:32"jshell> ldt.format(DateTimeFormatter.ofPattern("d/MMM/y hh:mm:ss")); $13 ==> "26/Sep/2018 10:58:32"jshell> ldt.format(DateTimeFormatter.ofPattern("d-MMM-y hh:mm:ss")); $14 ==> "26-Sep-2018 10:58:32"jshell> ldt.format(DateTimeFormatter.ofPattern("d-MMM-y hh:mm:ss")); $15 ==> "26-Sep-2018 10:58:32"jshell> ldt.format(DateTimeFormatter.ofPattern("d-MMM-y HH:mm:ss")); $16 ==> "26-Sep-2018 22:58:32"

可以在Javadoc中的java.time.format.DateTimeFormatter找到用于創(chuàng)建模式的不同規(guī)則。

讓我們看一下將日期和時間的有效String表示形式轉(zhuǎn)換為LocalDateTime及其相關(guān)對象:

<br />jshell> LocalDate ld = LocalDate.parse("2018-09-26") ld ==> 2018-09-26jshell> LocalDateTime ldt = LocalDateTime.parse("2018-09-26T22:24:33") ldt ==> 2018-09-26T22:24:33

您可以看到,在上面的代碼中,我們沒有提供用于解析字符串的模式,而是使用了默認(rèn)的ISO格式。 通過API交換日期和時間值時,此方法非常有用。

這樣,我展示了一些基本的操作,您可以使用與時區(qū)無關(guān)的新日期和時間實例進(jìn)行操作。 在接下來的文章中,我將寫有關(guān)時區(qū)的時間,查找持續(xù)時間,時間和日期之間的時間段以及如何使用不同的日歷系統(tǒng)。

翻譯自: https://www.javacodegeeks.com/2018/10/localdate-localtime-localdatetime.html

總結(jié)

以上是生活随笔為你收集整理的使用LocalDate,LocalTime和LocalDateTime的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 神宫寺奈绪一区二区三区 | 国模婷婷 | 久久午夜夜伦鲁鲁片无码免费 | 丁香六月五月婷婷 | 无码一区二区三区免费视频 | 国模一区二区三区 | 日欧美女人 | mm1313亚洲国产精品无码试看 | 在线观看免费福利 | 在线天堂v | 蜜桃av免费在线观看 | 黄色大片中文字幕 | 碧蓝之海动漫在线观看免费高清 | 最新天堂在线视频 | 国产网友自拍视频 | 快色网站 | 国产精品毛片一区二区在线看 | 国产福利电影在线 | 日韩专区av| 超碰下载页面 | 超碰狠狠 | 美女被男生免费视频 | 香蕉视频污视频 | 潮喷失禁大喷水无码 | 男性裸体全身精光gay | 日本黄色一级视频 | 免费人妻精品一区二区三区 | 中文字幕免费在线看线人 | 亚洲女同在线 | 少妇太紧太爽又黄又硬又爽 | www网站在线免费观看 | 国产区欧美区日韩区 | free欧美性69护士呻吟 | 寂寞午夜影院 | 美女露隐私网站 | 日韩黄色短片 | 国产精品无码永久免费不卡 | 亚洲毛片儿 | 日本中文字幕影院 | 国产精品福利视频 | 波多野结衣视频网址 | 欧美骚视频 | 日韩激情在线观看 | 黄a在线| 综合亚洲网| 国产成人av一区二区三区不卡 | 蜜桃视频一区二区在线观看 | 黄网站免费在线观看 | 欧美69影院 | 亚洲影音先锋 | 免费视频一二三区 | 99热精品国产 | youjizz亚洲 | 亚洲激情视频在线播放 | 久久精品美女 | 国产主播喷水 | 欧美gv在线 | 亚洲激情成人 | 人人爱人人 | 美女看片| 亚洲乱熟女一区二区 | 亚洲一区三区 | 欧美日韩三| 一级艳片新婚之夜 | 久久一区精品 | 国语对白av | 精品成人网 | 欧美一区二区三区四区在线观看 | 亚洲欧美在线播放 | 精品无码国产污污污免费网站 | 97精品在线视频 | 毛片无码一区二区三区a片视频 | 国产黄色片在线免费观看 | 国产午夜精品一区二区三区四区 | 九七电影院97理论片 | 啦啦啦免费高清视频在线观看 | 欧美成人国产va精品日本一级 | 福利91| 二级黄色片 | 9久9久9久女女女九九九一九 | 欧美做受高潮中文字幕 | 长篇h版少妇沉沦交换 | 国产精品999 | 国产又色又爽又黄的 | 涩涩五月天| 日本最黄网站 | 亚洲av区无码字幕中文色 | av在线播放网址 | 色综合中文综合网 | 神马久久久久久久久久久 | 高清av一区二区三区 | 欧美aⅴ| 国内自拍在线观看 | 亚洲顶级毛片 | 老熟女重囗味hdxx69 | 少妇流白浆 | 国产麻豆午夜三级精品 | 免费草逼网站 | 国产女人18毛片18精品 |