国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

java中LocalDateTime、Calendar、Date三種時間類型進(jìn)行加減

這篇具有很好參考價值的文章主要介紹了java中LocalDateTime、Calendar、Date三種時間類型進(jìn)行加減。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

介紹了三種日期類型以及他們的日期加減

什么是LocalDateTime

LocalDateTime是Java 8中的一個類,表示不帶時區(qū)的日期和時間。它是java.time包中的一個類,用于處理日期和時間的操作。

LocalDateTime包含日期和時間的信息,不包含時區(qū)信息。它提供了各種方法來獲取和操作日期和時間的各個部分,例如年、月、日、時、分、秒等。

與其他日期和時間類相比,LocalDateTime主要用于處理本地日期和時間的操作。它適合用于應(yīng)用程序中不涉及時區(qū)轉(zhuǎn)換的場景,例如計算兩個日期之間的間隔、格式化日期和時間等。

什么是Calendar

在Java中,Calendar是一個用于處理日期和時間的類。它提供了許多方法來獲取和設(shè)置日期、時間以及執(zhí)行日期和時間的計算操作。使用Calendar類,可以執(zhí)行各種常見的日期和時間操作,如獲取當(dāng)前日期和時間、計算兩個日期之間的差異、添加或減去指定數(shù)量的年、月、日、小時、分鐘等等。

Calendar類是一個抽象類,通過調(diào)用其靜態(tài)方法getInstance()來獲取一個Calendar對象的實例??梢允褂肅alendar對象來獲取和設(shè)置年、月、日、小時、分鐘、秒等日期和時間的具體值。此外,Calendar類還提供了一些方便的方法來執(zhí)行日期和時間的計算、比較和格式化等操作。

什么是Date

在Java中,Date是表示日期和時間的類。它是Java提供的最早的日期和時間類之一,用于表示從1970年1月1日 00:00:00 GMT(格林尼治標(biāo)準(zhǔn)時間)開始經(jīng)過的毫秒數(shù)。

Date類可以用于獲取和設(shè)置日期和時間的值,執(zhí)行日期和時間的計算和比較操作。它提供了多個構(gòu)造方法,可以根據(jù)傳入的參數(shù)來創(chuàng)建Date對象,包括指定年、月、日、小時、分鐘、秒數(shù)等等。

LocalDateTime類型加減

在Java中,我們可以使用LocalDateTime類型進(jìn)行加減操作。具體操作如下:

  1. 加法操作:

我們可以使用plusXXX()方法進(jìn)行加法操作,在方法中傳入一個時間量Duration或者Period。

例如:

LocalDateTime now = LocalDateTime.now(); //默認(rèn)當(dāng)前時間
LocalDateTime after = now.plusDays(1);  // 加1天
LocalDateTime before = now.plusHours(-3);  // 減3小時
System.out.println(after);
System.out.println(before);

結(jié)果:
localdatetime 加減,java,開發(fā)語言

  1. 減法操作:

我們可以使用minusXXX()方法進(jìn)行減法操作,在方法中傳入一個時間量Duration或者Period。

例如:

LocalDateTime now = LocalDateTime.now(); //默認(rèn)當(dāng)前時間
LocalDateTime before = now.minusDays(1);  // 減1天
LocalDateTime after = now.minusHours(-3);  // 減3小時
System.out.println(before);
System.out.println(after);

結(jié)果:
localdatetime 加減,java,開發(fā)語言

值得注意的是,plusXXX()minusXXX()方法會返回一個新的LocalDateTime對象,原有的對象并不會被修改。因此,我們需要將新的對象保存起來或者直接使用它。

需要注意的一點是,PeriodDuration是不同的時間量單位。Period是以年、月、日的方式表示時間間隔,而Duration是以秒、毫秒、納秒等為單位表示時間間隔。因此,在使用plusXXX()minusXXX()方法的時候,需要根據(jù)具體情況選擇合適的時間量類型。

Calendar加減

在Java中,我們可以使用Calendar類型進(jìn)行加減操作。具體操作如下:

  1. 加法操作:

我們可以使用add()方法進(jìn)行加法操作,在方法中傳入一個時間單位和該單位需要增加的數(shù)量。

例如:

Calendar cal = Calendar.getInstance(); //默認(rèn)當(dāng)前時間
cal.add(Calendar.DATE, 1);  // 加1天
cal.add(Calendar.HOUR_OF_DAY, -3);  // 減3小時  // 減3小時
System.out.println(cal.getTime());

結(jié)果:
localdatetime 加減,java,開發(fā)語言

  1. 減法操作:

我們可以使用add()方法進(jìn)行減法操作,在方法中傳入一個時間單位和該單位需要減少的數(shù)量。需要注意的是,由于add()方法沒有提供減法操作的直接實現(xiàn),因此需要傳入負(fù)數(shù)來實現(xiàn)減法操作。

例如:

Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -1);  // 減1天
cal.add(Calendar.HOUR_OF_DAY, 3);  // 加3小時,實現(xiàn)減法操作需傳入負(fù)數(shù)-3
System.out.println(cal.getTime());

結(jié)果:
localdatetime 加減,java,開發(fā)語言

需要注意的一點是,由于Calendar類型是線程不安全的,因此在多線程環(huán)境下使用時需要進(jìn)行同步操作,或者使用線程安全的ThreadLocal來存儲Calendar實例。

另外,從Java 8開始,建議使用java.time包中的新型日期時間API(例如LocalDateTime)來替代Calendar類型,因為新型API更加易用、更加清晰,同時也更加符合現(xiàn)代編程的需求。

Date類型加減

在Java中,我們可以使用java.util.Date類型進(jìn)行加減操作。但是需要注意的是,Date類型存在一些缺陷和問題,例如時區(qū)不支持、可變性等問題。

因此,從Java 8開始,建議使用新型日期時間APIjava.time中的LocalDateLocalTime、LocalDateTime等類型來替代Date類型。

不過如果你仍然需要使用Date類型進(jìn)行加減操作,可以按照以下步驟進(jìn)行:

  1. 通過getTime()方法將Date類型轉(zhuǎn)換為毫秒數(shù),進(jìn)行加減操作:
Date date = new Date(); //默認(rèn)當(dāng)前時間
long time = date.getTime();  // 獲取毫秒數(shù)
time += 24 * 60 * 60 * 1000;  // 加1天,單位為毫秒
date.setTime(time);  // 將毫秒數(shù)轉(zhuǎn)換為Date類型
System.out.println(date);

結(jié)果:
localdatetime 加減,java,開發(fā)語言

  1. 通過Calendar類型進(jìn)行加減操作:
Date date = new Date(); //默認(rèn)當(dāng)前時間
Calendar cal = Calendar.getInstance();
cal.setTime(date);  // 將Date類型轉(zhuǎn)換為Calendar類型
cal.add(Calendar.DATE, 1);  // 加1天
date = cal.getTime();  // 將Calendar類型轉(zhuǎn)換為Date類型
System.out.println(date);

結(jié)果:
localdatetime 加減,java,開發(fā)語言

需要注意的一點是,由于Date類型存在可變性的問題,不建議在多線程環(huán)境下進(jìn)行操作,可以考慮使用線程安全的ThreadLocal來存儲Date實例。同時,在Java 8之前的版本中,也可以考慮使用第三方日期時間庫Joda-Time來替代Date類型。

總結(jié)

  1. LocalDateTime是Java 8中的一個類,表示不帶時區(qū)的日期和時間。
  2. Calendar是一個用于處理日期和時間的類,它提供了許多方法來獲取和設(shè)置日期、時間以及執(zhí)行日期和時間的計算操作。
  3. Date是表示日期和時間的類。它是Java提供的最早的日期和時間類之一,用于表示從1970年1月1日 00:00:00 GMT(格林尼治標(biāo)準(zhǔn)時間)開始經(jīng)過的毫秒數(shù)。

日期的加減這就不用過多總結(jié)了,用法都是固定的。文章來源地址http://www.zghlxwxcb.cn/news/detail-762941.html

到了這里,關(guān)于java中LocalDateTime、Calendar、Date三種時間類型進(jìn)行加減的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • java中LocalDate、Calendar、Date類型進(jìn)行加減

    java三種類型的加減,LocalDate、Calendar、Date @ 目錄 1.LocalDate類型加減: 2.Calendar加減: 3.Date類型加減 以下是LocalDate類進(jìn)行日期加減: 運行結(jié)果: 可以看到,使用LocalDate類進(jìn)行加減操作代碼比較簡潔清晰,也更易讀易懂。 Java中的Calendar類提供了許多方法用于對日期和時間進(jìn)行加減操

    2024年02月05日
    瀏覽(18)
  • Java String、Date、Calendar、LocalDate和LocalDateTime互轉(zhuǎn)

    目錄 一、String和Date互轉(zhuǎn) 1.1 String時間轉(zhuǎn)為Date 1.2 Date轉(zhuǎn)為String 二、String和Calendar互轉(zhuǎn) 2.1 String時間轉(zhuǎn)為Calendar 2.2 Calendar轉(zhuǎn)為String 三、String和LocalDate(LocalDateTime)互轉(zhuǎn) 3.1 String時間轉(zhuǎn)為LocalDate(LocalDateTime) 3.2 LocalDate(LocalDateTime)轉(zhuǎn)為String 四、Date和Calendar互轉(zhuǎn) 4.1 Date轉(zhuǎn)為Calen

    2024年02月06日
    瀏覽(33)
  • Java中的日期時間類詳解(Date、Calendar、DateFormat)

    Hi i,m JinXiang ? 前言?? 本篇文章主要介紹Java時間的幾種常見方法以及部分理論知識 ??歡迎點贊????收藏??留言評論???私信必回喲?? ??博主收將持續(xù)更新學(xué)習(xí)記錄獲,友友們有任何問題可以在評論區(qū)留言 在JDK1.0中,Date類是唯一的一個代表時間的類,但是由于Date類不

    2024年02月05日
    瀏覽(20)
  • java關(guān)于后端怎么去接收Date、LocalDateTime類型的參數(shù)

    Date類型后端入?yún)⒌母袷侥J(rèn)為2019/01/18 11:11:11 Get方式傳參 是 沒有時區(qū)的影響的 @JsonFormat的作用: 返回給前端的時間是經(jīng)過@JsonFormat格式化的時間。 @DateTimeFormat的作用: 前端需要按照@DateTimeForma的格式進(jìn)行傳參 示例: Date 類型直接作為參數(shù)的情況 Date類型屬性的實體類作為參

    2024年02月05日
    瀏覽(20)
  • 日期與時間【Date/SimpleDateFormat/Calendar】

    視頻鏈接:https://www.bilibili.com/video/BV1Cv411372m?p=121vd_source=9140dcc493e34a9f4e95ca2f8f71bbd3 Date類的對象在java中代表的是當(dāng)前所在系統(tǒng)的此刻日期時間。 Date的構(gòu)造器 public Date():創(chuàng)建一個Date對象,代表的是系統(tǒng)當(dāng)前此刻日期時間。 Date的常用方法 public long getTime():獲取時間對象的毫秒值

    2024年02月03日
    瀏覽(28)
  • Java Date類型返回前端后 變成時間戳

    Java Date類型返回前端后 變成時間戳

    今天遇到這樣一個問題,數(shù)據(jù)庫查出來的數(shù)據(jù)是 Date 日期 和 Time時間。 但是傳給前端就變成了 時間戳的格式 比如\\\"yyyy-MM-dd hh:mm:ss.000+0000\\\" 數(shù)據(jù)庫查詢?nèi)缦?前端JSON格式如下 如果想直接轉(zhuǎn)成前端想要的參數(shù)呢,有幾種方法 ,比如Date類型查出來后 截取固定位置的方式返回給前端

    2024年02月15日
    瀏覽(16)
  • 【Java】postman如何傳遞Date時間類型數(shù)據(jù)

    【Java】postman如何傳遞Date時間類型數(shù)據(jù)

    提示:遇到的問題,自己記錄一下 提示:測試時需要傳遞Date類型數(shù)據(jù)

    2024年02月13日
    瀏覽(23)
  • java基礎(chǔ): Date類型最常用的時間計算(相當(dāng)全面)

    目錄 1. 前言:? 2. 具體方法實現(xiàn) 2.1 獲取當(dāng)天的開始時間 2.2 獲取當(dāng)天的結(jié)束時間 2.3 獲取昨天的開始時間 2.4 獲取昨天的結(jié)束時間 2.5 獲取明天的開始時間 2.6 獲取明天的結(jié)束時間 2.7 獲取本周的開始時間 2.8 獲取本周的結(jié)束時間 2.9 獲取本月的開始時間 2.10 獲取本月的結(jié)束時間

    2024年02月05日
    瀏覽(24)
  • 49天精通Java,第20天,Date類、Calendar類、date轉(zhuǎn)calendar
  • API(Date類,SimpleDateFormat類,Calendar類,JDK8時間相關(guān)類,包裝類,算法小題)

    API(Date類,SimpleDateFormat類,Calendar類,JDK8時間相關(guān)類,包裝類,算法小題)

    JDK7時間相關(guān)類 JDK8時間相關(guān)類 包裝類 綜合練習(xí) Collection集合 能夠使用日期類輸出當(dāng)前日期 能夠使用將日期格式化為字符串的方法 能夠使用將字符串轉(zhuǎn)換成日期的方法 能夠說出8種基本類型對應(yīng)的包裝類名稱 能夠說出自動裝箱、自動拆箱的概念 能夠?qū)⒆址D(zhuǎn)換為對應(yīng)的基

    2024年02月02日
    瀏覽(17)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包