小工具知识网

当前位置: 首页 > 行业知识 > 在Java中为日期增加一天的多种方法

行业知识

在Java中为日期增加一天的多种方法

2026-10-26 17:59:00 来源:互联网转载

这篇文章主要给大家介绍了关于如何在Java中为日期增加一天的多种方法,在JAVA业务代码中,经常会遇到通过指定时间,增加指定天数的业务需求,需要的朋友可以参考下

目录
  • 前言
  • 一、用 plusDays() 方法将 Java 中的日期增加一天
  • 二、用 Calendar 方法将 Java 中的日期增加一天
  • 三、用 Milliseconds 方法将 Java 中的日期增加一天
  • 四、用 Instant 类向 Java 日期添加一天
  • 总结
  • 补充知识:JAVA根据时间增加1天

    前言

    在本教程中,我们将学习如何在 Java 中将日期增加一天。这可以通过使用各种方法来完成,例如 plusDays 方法,Calendar 类方法,向 Date 对象添加毫秒以及 Instant class 方法。如果你使用的是 Java 1.8 或更高版本,我们建议使用 plusDays 方法。

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

    在 Java 1.8 及更高版本中,新的 java.time 类(即 LocalDate,LocalDateTime)具有 plusDays 和 minusDays 方法,可从任何时间实例中添加和减去时间单位。

    示例代码:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    // 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 中的日期添加一天。只需在日历类实例中添加一天即可完成:

    代码如下(示例):

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    // 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 日期有一个使用毫秒的构造函数。getTime() 方法为我们提供了该值。因此,增加一天的毫秒数将为 Date 添加一天。

    代码:

    代码如下(示例):

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    // 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

    请注意,如果我们使用带有夏令时的日历时区,则可能不会跳到第二天。

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

    Java Instant 类几乎等同于日期。Instant 解析为纳秒。instant.plus 方法将给定的天数添加到 Date 中。

    代码:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    // 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

    总结

    可以使用 java.util.Calendar 类来实现这个功能。以下是一个简单的示例:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    import java.util.Calendar;

    import java.util.Date;

    public class AddOneDay {

        public static void main(String[] args) {

            // 创建一个 Calendar 实例

            Calendar calendar = Calendar.getInstance();

            // 获取当前日期

            Date currentDate = new Date();

            System.out.println("当前日期: " + currentDate);

            // 将 Calendar 设置为当前日期

            calendar.setTime(currentDate);

            // 为 Calendar 增加一天

            calendar.add(Calendar.DATE, 1);

            // 获取增加一天后的日期

            Date nextDate = calendar.getTime();

            System.out.println("增加一天后的日期: " + nextDate);

        }

    }

    在这个示例中,我们首先创建了一个 Calendar 实例,并将其设置为当前日期。然后,我们使用 add 方法为日期增加一天。最后,我们使用 getTime 方法获取增加一天后的日期。

    补充知识:JAVA根据时间增加1天

    业务场景

    在JAVA业务代码中,经常会遇到通过指定时间,增加指定天数的业务需求。话不多说,直接上代码:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    String time = "2021-12-1"; //指定时间

            int day = 30;//指定增加天数

            SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");

            Date timeNow = sf.parse(time);

            Calendar c = Calendar.getInstance();

            c.setTime(timeNow);

            System.out.println("当前日期:"+sf.format(timeNow));

            c.add(Calendar.DAY_OF_MONTH, day);

            System.out.println("增加后日期:"+sf.format(c.getTime()));

    执行结果

    原文链接:在Java中为日期增加一天的多种方法_java_脚本之家 

上一篇:服务器怎么打开黑名单?

下一篇:揭秘在线拍照源码,轻松打造超吸睛拍照功能!