溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

java類(lèi)怎么實(shí)現(xiàn)日期的時(shí)間差

發(fā)布時(shí)間:2023-05-04 11:20:13 來(lái)源:億速云 閱讀:78 作者:iii 欄目:編程語(yǔ)言

今天小編給大家分享一下java類(lèi)怎么實(shí)現(xiàn)日期的時(shí)間差的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。

1.Period類(lèi)

方法getYears(),getMonths()和getDays()。

import java.time.LocalDate;import java.time.Month;import java.time.Period;public class Test {
 
 
 
    public static void main(String[] args) {
 
        LocalDate today = LocalDate.now();
 
        System.out.println("Today : " + today);
 
        LocalDate birthDate = LocalDate.of(1993, Month.OCTOBER, 19);
 
        System.out.println("BirthDate : " + birthDate);
 
 
 
        Period p = Period.between(birthDate, today);
 
        System.out.printf("年齡 : %d 年 %d 月 %d 日", p.getYears(), p.getMonths(), p.getDays());
 
}}
Today : 2017-06-16BirthDate : 1993-10-19年齡 : 23 年 7 月 28 日

2.Duration類(lèi)

基于時(shí)間的值(如秒,納秒)測(cè)量時(shí)間量的方法。

import java.time.Duration;import java.time.Instant;public class Test {
 
 
 
    public static void main(String[] args) {
 
        Instant inst1 = Instant.now();
 
        System.out.println("Inst1 : " + inst1);
 
        Instant inst2 = inst1.plus(Duration.ofSeconds(10));
 
        System.out.println("Inst2 : " + inst2);
 
 
 
        System.out.println("Difference in milliseconds : " + Duration.between(inst1, inst2).toMillis());
 
 
 
        System.out.println("Difference in seconds : " + Duration.between(inst1, inst2).getSeconds());
 
 
 
}}
Inst1 : 2017-06-16T07:46:45.085Z
Inst2 : 2017-06-16T07:46:55.085Z
Difference in milliseconds : 10000Difference in seconds : 10

3.ChronoUnit類(lèi)

ChronoUnit類(lèi)可用于在單個(gè)時(shí)間單位內(nèi)測(cè)量一段時(shí)間,例如天數(shù)或秒。

以下是使用between()方法來(lái)查找兩個(gè)日期之間的區(qū)別的示例。

import java.time.LocalDate;import java.time.Month;import java.time.temporal.ChronoUnit;public class Test {
 
 
 
    public static void main(String[] args) {
 
        LocalDate startDate = LocalDate.of(1993, Month.OCTOBER, 19);
 
        System.out.println("開(kāi)始時(shí)間  : " + startDate);
 
 
 
        LocalDate endDate = LocalDate.of(2017, Month.JUNE, 16);
 
        System.out.println("結(jié)束時(shí)間 : " + endDate);
 
 
 
        long daysDiff = ChronoUnit.DAYS.between(startDate, endDate);
 
        System.out.println("兩天之間的差在天數(shù)   : " + daysDiff);
 
 
 
}}
開(kāi)始時(shí)間  : 1993-10-19
結(jié)束時(shí)間 : 2017-06-16
兩天之間的差在天數(shù)   : 8641

以上就是“java類(lèi)怎么實(shí)現(xiàn)日期的時(shí)間差”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI