亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java核心教程之常見(jiàn)時(shí)間日期的處理方法

 更新時(shí)間:2021年02月18日 09:11:28   作者:ruan_luqingnian  
這篇文章主要給大家介紹了關(guān)于Java核心教程之常見(jiàn)時(shí)間日期的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

Java日期處理類Date詳解

時(shí)間的基礎(chǔ)知識(shí)

  • 時(shí)區(qū):整個(gè)地球分為二十四時(shí)區(qū),每個(gè)時(shí)區(qū)都有自己的本地時(shí)間。
  • 為了統(tǒng)一起見(jiàn),使用一個(gè)統(tǒng)一的時(shí)間,稱為全球標(biāo)準(zhǔn)時(shí)間(UTC,Universal Time Coordinated)。
  • TC與格林尼治平均時(shí)(GMT,Greenwich Mean Time,也翻譯成:格林威治標(biāo)準(zhǔn)時(shí)間)差不多一樣
  • CST(北京時(shí)間),北京時(shí)間,China standard Time,中國(guó)標(biāo)準(zhǔn)時(shí)間。在時(shí)區(qū)劃分上,屬東八區(qū),比協(xié)調(diào)世界時(shí)早8小時(shí),記為UTC+8。
  • 時(shí)間戳:自1970年1月1日(08:00:00GMT)至當(dāng)前時(shí)間的總秒數(shù),它也被稱為Unix時(shí)間戳(unix Timestamp),廣泛的運(yùn)用在知識(shí)產(chǎn)權(quán)保護(hù)、合同簽字、金融帳務(wù)、電子報(bào)價(jià)投標(biāo)、股票交易等方面
  • 格式多種:2050-10-3110:11:11、2050/10/3110/10:10年、月、日、周幾等

背景:程序代碼中怎么表示時(shí)間呢?我需要獲取當(dāng)前時(shí)間怎么辦

ava.util包提供了Date類來(lái)封裝當(dāng)前的日期和時(shí)間

構(gòu)造函數(shù)

//當(dāng)前時(shí)間
Date()
//從1970年1月1日起的毫秒數(shù)作為參數(shù)
Date(long millisec)

常見(jiàn)方法

//返回自1970年1月1日00:00:00GMT以來(lái)此Date對(duì)象表示的毫秒數(shù)。
long getTime()
//調(diào)用此方法的Date對(duì)象在指定日期之后返回true,否則返回false。
boolean after(Date date)
//調(diào)用此方法的Date對(duì)象在指定日期之前返回true,否則返回false。
boolean before(Date date)

新版JDK8之時(shí)間日期處理類

Java8通過(guò)發(fā)布新的Date-Time API(JSR310)來(lái)進(jìn)一步加強(qiáng)對(duì)日期與時(shí)間的處理

新增了很多常見(jiàn)的api,如日期/時(shí)間的比較,加減,格式化等

包所在位置 java.time

核心類

LocalDate:不包含具體時(shí)間的日期。
LocalTime:不含日期的時(shí)間。
LocalDateTime:包含了日期及時(shí)間。

LocalDate常用API

 LocalDate today=LocalDate.now();
 system.out.print1n("今天日期:"+today);
 
//獲取年,月,日,周幾
system.out.print1n("現(xiàn)在是哪年:"+today.getYear());
system.out.print1n("現(xiàn)在是哪月:"+today.getMonth());
System.out.print1n("現(xiàn)在是哪月(數(shù)字):"+today.getMonthValue());
System.out.print1n("現(xiàn)在是幾號(hào):"+today.getDayofMonth());
system.out.print1n("現(xiàn)在是周幾:"+today.getDayofweek());
//加減年份,加后返回的對(duì)象才是修改后的,舊的依舊是舊的LocalDate changeDate=today.plusYears(1);
system.out.print1n("加后是哪年:"+changeDate.getYear());
System.out.print1n("舊的是哪年:"+today.getYear());
//日期比較
system.out.print1n("isafter:"+changeDate.isAfter(today));
//getYear()int 獲取當(dāng)前日期的年份
//getMonth()Month獲取當(dāng)前日期的月份對(duì)象
//getMonthValue()int 獲取當(dāng)前日期是第幾月
//getDayofweek()Dayofweek 表示該對(duì)象表示的日期是星期幾
//getDayofMonth()int 表示該對(duì)象表示的日期是這個(gè)月第幾天
//getDayofyear()int 表示該對(duì)象表示的日期是今年第幾天
//withyear(int year)LocalDate 修改當(dāng)前對(duì)象的年份
//withMonth(int month)LocalDate修改當(dāng)前對(duì)象的月份
//withpayofMonth(int dayofMonth)LocalDate 修改當(dāng)前對(duì)象在當(dāng)月的日期
//plusYears(long yearsToAdd)Localpate 當(dāng)前對(duì)象增加指定的年份數(shù)
//plusMonths(1ong monthsToAdd)LocalDate 當(dāng)前對(duì)象增加指定的月份數(shù)
//plusweeks(1ong weeksToAdd)LocalDate 當(dāng)前對(duì)象增加指定的周數(shù)
//plusDays(1ong daysToAdd)LocalDate 當(dāng)前對(duì)象增加指定的天數(shù)
//minusYears(long yearsTosubtract)LocalDate 當(dāng)前對(duì)象減去指定的年數(shù)
//minusMonths(1ong months ToSubtract)LocalDate當(dāng)前對(duì)象減去注定的月數(shù)
//minusWeeks(long weeksTosubtract)LocalDate 當(dāng)前對(duì)象減去指定的周數(shù)
//minusDays(1ong daysTosubtract)LocalDate當(dāng)前對(duì)象減去指定的天數(shù)
//compareTo(ChronoLocalDate other)int 比較當(dāng)前對(duì)象和other對(duì)象在時(shí)間上的大小,返回值如果為正,則當(dāng)前對(duì)象時(shí)間較晚
//isBefore(ChronoLocalDate other)boolean比較當(dāng)前對(duì)象日期是否在other對(duì)象日期之前
//isAfter(ChronoLocalDate other)boolean 比較當(dāng)前對(duì)象日期是否在other對(duì)象日期之后
//isEqual(ChronoLocalDate other)boolean 比較兩個(gè)日期對(duì)象是否相等

新版JDK8之時(shí)間日期格式化

為什么要時(shí)間日期做格式化

  • 程序打印,或者網(wǎng)頁(yè)顯示時(shí)間日期格式,用戶有不同的需求,則需要根據(jù)一定的規(guī)則進(jìn)行格式化

常用的占位符

  • y四位數(shù)年份
  • M月d日
  • h時(shí)在
  • m分
  • S毫秒

JDK8之后:引入線程安全的日期與時(shí)

LocalDateTime ldt = LocalDateTime.now();
System.out.println(ldt);
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd
HH:mm:ss");
String ldtStr = dtf.format(ldt);
System.out.println(ldtStr);

獲取指定的日期時(shí)間對(duì)象LocalDate Time ldt=LocalDate Time.of(2020,11,11,8,20,30);System.out.println(ldt);

計(jì)算日期時(shí)間差 java.time.Duration

LocalDateTime today = LocalDateTime.now();
System.out.println(today);
LocalDateTime changeDate = LocalDateTime.of(2020,10,1,10,40,30);
System.out.println(changeDate);
Duration duration = Duration.between( today,changeDate);//第⼆二個(gè)參數(shù)減第⼀一
個(gè)參數(shù)
System.out.println(duration.toDays());//兩個(gè)時(shí)間差的天數(shù)
System.out.println(duration.toHours());//兩個(gè)時(shí)間差的小時(shí)數(shù)
System.out.println(duration.toMinutes());//兩個(gè)時(shí)間差的分鐘數(shù)
System.out.println(duration.toMillis());//兩個(gè)時(shí)間差的毫秒數(shù)
System.out.println(duration.toNanos());//兩個(gè)時(shí)間差的納秒數(shù)

總結(jié)

到此這篇關(guān)于Java核心教程之常見(jiàn)時(shí)間日期的文章就介紹到這了,更多相關(guān)Java常見(jiàn)時(shí)間日期內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java Class.getSimpleName() 詳解及用法

    java Class.getSimpleName() 詳解及用法

    這篇文章主要介紹了java Class.getSimpleName() 詳解及用法的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • 用Java實(shí)現(xiàn)一個(gè)靜態(tài)鏈表的方法步驟

    用Java實(shí)現(xiàn)一個(gè)靜態(tài)鏈表的方法步驟

    這篇文章主要介紹了用Java實(shí)現(xiàn)一個(gè)靜態(tài)鏈表的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • springMVC的RequestMapping請(qǐng)求不到路徑的解決

    springMVC的RequestMapping請(qǐng)求不到路徑的解決

    這篇文章主要介紹了springMVC的RequestMapping請(qǐng)求不到路徑的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • 淺析Jmeter多用戶token使用問(wèn)題

    淺析Jmeter多用戶token使用問(wèn)題

    這篇文章主要介紹了Jmeter多用戶token使用問(wèn)題,通過(guò)具體的例子給大家介紹了Jmeter多用戶token使用場(chǎng)景接口分析,需要的朋友可以參考下
    2021-10-10
  • Springboot實(shí)現(xiàn)多服務(wù)器session共享

    Springboot實(shí)現(xiàn)多服務(wù)器session共享

    這篇文章主要為大家詳細(xì)介紹了Springboot實(shí)現(xiàn)多服務(wù)器session共享,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • Java中包裝類介紹與其注意事項(xiàng)

    Java中包裝類介紹與其注意事項(xiàng)

    Java語(yǔ)言是一個(gè)面向?qū)ο蟮恼Z(yǔ)言,但是Java中的基本數(shù)據(jù)類型卻是不面向?qū)ο蟮模@在實(shí)際使用時(shí)存在很多的不便,所以在設(shè)計(jì)類時(shí)為每個(gè)基本數(shù)據(jù)類型設(shè)計(jì)了一個(gè)對(duì)應(yīng)的類進(jìn)行代表,這樣八個(gè)和基本數(shù)據(jù)類型對(duì)應(yīng)的類統(tǒng)稱為包裝類,有些地方也翻譯為外覆類或數(shù)據(jù)類型類。
    2017-02-02
  • JAVA簡(jiǎn)單選擇排序算法原理及實(shí)現(xiàn)

    JAVA簡(jiǎn)單選擇排序算法原理及實(shí)現(xiàn)

    選擇排序(Selection Sort )分為兩種 簡(jiǎn)單選擇排序(Simple Selection Sort) 和樹(shù)形選擇排序
    2014-01-01
  • JVM致命錯(cuò)誤日志詳解(最新推薦)

    JVM致命錯(cuò)誤日志詳解(最新推薦)

    這篇文章主要介紹了JVM致命錯(cuò)誤日志詳解,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • springBoot下實(shí)現(xiàn)java自動(dòng)創(chuàng)建數(shù)據(jù)庫(kù)表

    springBoot下實(shí)現(xiàn)java自動(dòng)創(chuàng)建數(shù)據(jù)庫(kù)表

    這篇文章主要介紹了springBoot下實(shí)現(xiàn)java自動(dòng)創(chuàng)建數(shù)據(jù)庫(kù)表的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java并發(fā)編程之死鎖相關(guān)知識(shí)整理

    Java并發(fā)編程之死鎖相關(guān)知識(shí)整理

    前篇文章在講解線程安全的時(shí)候,有提到過(guò)為了保證每個(gè)線程都能正常執(zhí)行共享資源操作,Java引入了鎖機(jī)制,雖然這樣使多線程改善了系統(tǒng)的處理能力,然而也帶來(lái)了新的問(wèn)題,其中之一:死鎖,需要的朋友可以參考下
    2021-06-06

最新評(píng)論