欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在Java中為日期增加一天的多種方法

 更新時(shí)間:2023年07月05日 15:57:57   作者:數(shù)據(jù)大魔王  
這篇文章主要給大家介紹了關(guān)于如何在Java中為日期增加一天的多種方法,在JAVA業(yè)務(wù)代碼中,經(jīng)常會(huì)遇到通過指定時(shí)間,增加指定天數(shù)的業(yè)務(wù)需求,需要的朋友可以參考下

前言

在本教程中,我們將學(xué)習(xí)如何在 Java 中將日期增加一天。這可以通過使用各種方法來完成,例如 plusDays 方法,Calendar 類方法,向 Date 對象添加毫秒以及 Instant class 方法。如果你使用的是 Java 1.8 或更高版本,我們建議使用 plusDays 方法。

一、用 plusDays() 方法將 Java 中的日期增加一天

在 Java 1.8 及更高版本中,新的 java.time 類(即 LocalDate,LocalDateTime)具有 plusDays 和 minusDays 方法,可從任何時(shí)間實(shí)例中添加和減去時(shí)間單位。

示例代碼:

// java 1.8
package simpletesting;
import java.time.LocalDateTime;
public class SimpleTesting {
    public static void main(String[] args) {
        LocalDateTime today = LocalDateTime.now();     //Today
        LocalDateTime tomorrow = today.plusDays(1);     //Plus 1 day
        LocalDateTime yesterday = today.minusDays(1);   //Minus 1 day
        System.out.println("Today:     "+today);
        System.out.println("Tomorrow:  "+tomorrow);
        System.out.println("Yesterday: "+yesterday);
    }
}

輸出:

Today:     2020-03-22T19:01:00.728
Tomorrow:  2020-03-23T19:01:00.728
Yesterday: 2020-03-21T19:01:00.728

二、用 Calendar 方法將 Java 中的日期增加一天

我們可以使用日歷 Calendar 類向 Java 中的日期添加一天。只需在日歷類實(shí)例中添加一天即可完成:

代碼如下(示例):

// java 1.8
package simpletesting;
import java.util.Calendar;
import java.util.Date;
public class SimpleTesting {
    public static void main(String[] args) {
        Date dt = new Date();
        System.out.println("Today:    "+dt);
        Calendar c = Calendar.getInstance();
        c.setTime(dt);
        c.add(Calendar.DATE, 1);
        dt = c.getTime();
        System.out.println("Tomorrow: "+dt);
    }
}

輸出:

Today:    Sun Mar 22 19:07:48 PKT 2020
Tomorrow: Mon Mar 23 19:07:48 PKT 2020

三、用 Milliseconds 方法將 Java 中的日期增加一天

Java 日期有一個(gè)使用毫秒的構(gòu)造函數(shù)。getTime() 方法為我們提供了該值。因此,增加一天的毫秒數(shù)將為 Date 添加一天。

代碼:

代碼如下(示例):

// java 1.8
package simpletesting;
import java.util.Date;
public class SimpleTesting {
    public static void main(String[] args) {
        Date dt = new Date();
        System.out.println("Today:    " + dt);
        Date tomorrow = new Date(dt.getTime() + (1000 * 60 * 60 * 24));
        System.out.println("Tomorrow: " + tomorrow);
    }
}

輸出:

Today:    Sun Mar 22 19:15:27 PKT 2020
Tomorrow: Mon Mar 23 19:15:27 PKT 2020

請注意,如果我們使用帶有夏令時(shí)的日歷時(shí)區(qū),則可能不會(huì)跳到第二天。

四、用 Instant 類向 Java 日期添加一天

Java Instant 類幾乎等同于日期。Instant 解析為納秒。instant.plus 方法將給定的天數(shù)添加到 Date 中。

代碼:

// java 1.8
package simpletesting;
import java.time.Instant;
import java.time.temporal.ChronoUnit;
import java.util.Date;
public class SimpleTesting {
    public static void main(String[] args) {
        Date dt = new Date();
        System.out.println("Today:    " + dt);
        Instant instant = dt.toInstant();
        Instant nextDay = instant.plus(1, ChronoUnit.DAYS);
        System.out.println("Tomorrow: " + nextDay);
    }
}

輸出:

Today:    Sun Mar 22 19:19:58 PKT 2020
Tomorrow: 2020-03-23T14:19:58.072Z

總結(jié)

可以使用 java.util.Calendar 類來實(shí)現(xiàn)這個(gè)功能。以下是一個(gè)簡單的示例:

import java.util.Calendar;
import java.util.Date;
public class AddOneDay {
    public static void main(String[] args) {
        // 創(chuàng)建一個(gè) Calendar 實(shí)例
        Calendar calendar = Calendar.getInstance();
        // 獲取當(dāng)前日期
        Date currentDate = new Date();
        System.out.println("當(dāng)前日期: " + currentDate);
        // 將 Calendar 設(shè)置為當(dāng)前日期
        calendar.setTime(currentDate);
        // 為 Calendar 增加一天
        calendar.add(Calendar.DATE, 1);
        // 獲取增加一天后的日期
        Date nextDate = calendar.getTime();
        System.out.println("增加一天后的日期: " + nextDate);
    }
}

在這個(gè)示例中,我們首先創(chuàng)建了一個(gè) Calendar 實(shí)例,并將其設(shè)置為當(dāng)前日期。然后,我們使用 add 方法為日期增加一天。最后,我們使用 getTime 方法獲取增加一天后的日期。

補(bǔ)充知識(shí):JAVA根據(jù)時(shí)間增加1天

業(yè)務(wù)場景

在JAVA業(yè)務(wù)代碼中,經(jīng)常會(huì)遇到通過指定時(shí)間,增加指定天數(shù)的業(yè)務(wù)需求。話不多說,直接上代碼:

String time = "2021-12-1"; //指定時(shí)間
        int day = 30;//指定增加天數(shù)
        SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
        Date timeNow = sf.parse(time);
        Calendar c = Calendar.getInstance();
        c.setTime(timeNow); 
        System.out.println("當(dāng)前日期:"+sf.format(timeNow));
        c.add(Calendar.DAY_OF_MONTH, day);
        System.out.println("增加后日期:"+sf.format(c.getTime()));

執(zhí)行結(jié)果

到此這篇關(guān)于在Java中為日期增加一天的文章就介紹到這了,更多相關(guān)Java日期增加一天內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java字符串轉(zhuǎn)駝峰格式的方法

    Java字符串轉(zhuǎn)駝峰格式的方法

    在開發(fā)場景中,我們會(huì)遇到一些涉及字符串的轉(zhuǎn)化,本文主要介紹了Java字符串轉(zhuǎn)駝峰格式的方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • SpringBoot實(shí)現(xiàn)接口防刷的兩種方法

    SpringBoot實(shí)現(xiàn)接口防刷的兩種方法

    接口被刷指的是同一接口被頻繁調(diào)用,可能是由于以下原因?qū)е拢簮阂夤艉驼`操作或程序錯(cuò)誤,本文給大家介紹了SpringBoot實(shí)現(xiàn)接口防刷的兩種方法,并有相關(guān)的代碼示例供大家參考,需要的朋友可以參考下
    2024-06-06
  • Java編程在ICPC快速IO實(shí)現(xiàn)源碼

    Java編程在ICPC快速IO實(shí)現(xiàn)源碼

    這篇文章主要介紹了Java Fast IO in ICPC實(shí)現(xiàn)源碼,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-09-09
  • Java中List常用操作比for循環(huán)更優(yōu)雅的寫法示例

    Java中List常用操作比for循環(huán)更優(yōu)雅的寫法示例

    List是Java中比較常用的集合類,關(guān)于List接口有很多實(shí)現(xiàn)類,下面這篇文章主要給大家介紹了關(guān)于Java中List常用操作比for循環(huán)更優(yōu)雅的寫法,需要的朋友可以參考下
    2021-11-11
  • Spring @Scheduled的坑及解決

    Spring @Scheduled的坑及解決

    這篇文章主要介紹了Spring @Scheduled的坑及解決,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • SpringBoot自動(dòng)裝配原理詳解

    SpringBoot自動(dòng)裝配原理詳解

    這篇文章主要詳細(xì)介紹了SpringBoot的自動(dòng)裝配原理,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考一下
    2023-04-04
  • java實(shí)現(xiàn)ModbusCRC16校驗(yàn)的示例代碼

    java實(shí)現(xiàn)ModbusCRC16校驗(yàn)的示例代碼

    本文介紹了使用Java實(shí)現(xiàn)ModbusCRC16校驗(yàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11
  • 淺析MMAP零拷貝在RocketMQ中的運(yùn)用

    淺析MMAP零拷貝在RocketMQ中的運(yùn)用

    零拷貝技術(shù)可以減少數(shù)據(jù)拷貝和共享總線操作的次數(shù),消除傳輸數(shù)據(jù)在存儲(chǔ)器之間不必要的中間拷貝次數(shù),從而有效地提高數(shù)據(jù)傳輸效率,這篇文章主要介紹了MMAP零拷貝在RocketMQ中的運(yùn)用,需要的朋友可以參考下
    2022-07-07
  • java數(shù)據(jù)結(jié)構(gòu)與算法數(shù)組模擬隊(duì)列示例詳解

    java數(shù)據(jù)結(jié)構(gòu)與算法數(shù)組模擬隊(duì)列示例詳解

    這篇文章主要為大家介紹了java數(shù)據(jù)結(jié)構(gòu)與算法數(shù)組模擬隊(duì)列示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Java中volatile關(guān)鍵字的作用是什么舉例詳解

    Java中volatile關(guān)鍵字的作用是什么舉例詳解

    這篇文章主要介紹了Java中volatile關(guān)鍵字的作用是什么的相關(guān)資料,volatile關(guān)鍵字在Java中用于修飾變量,提供可見性和禁止指令重排的特性,但不保證原子性,它通過內(nèi)存屏障實(shí)現(xiàn)這些特性,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-04-04

最新評(píng)論