📌  相关文章
📜  Java中的 LocalDateTime plusMonths() 方法及示例(1)

📅  最后修改于: 2023-12-03 15:16:24.256000             🧑  作者: Mango

Java中的 LocalDateTime plusMonths() 方法及示例

Java中的 LocalDateTime类是一个日期时间类,包含了日期和时间,提供了许多日期和时间操作方法。其中之一就是plusMonths()方法,该方法将当前LocalDateTime实例加上指定的月份数,并返回一个新的LocalDateTime实例。

语法
public LocalDateTime plusMonths(long monthsToAdd)

参数说明:

  • monthsToAdd: 要添加的月份数,可以为负数。

返回值说明:

该方法返回当前LocalDateTime实例加上指定月份数后的新实例。

示例

下面的示例演示了使用plusMonths()方法将日期从当前日期向前或向后移动若干个月:

import java.time.LocalDateTime;

class Main {
  public static void main(String[] args) {
    // 获取当前时间
    LocalDateTime now = LocalDateTime.now();

    // 向前移动两个月
    LocalDateTime after = now.plusMonths(-2);
    System.out.println("当前时间为:" + now);
    System.out.println("向前移动两个月后的时间为:" + after);

    // 向后移动三个月
    LocalDateTime before = now.plusMonths(3);
    System.out.println("向后移动三个月后的时间为:" + before);
  }
}

输出结果为:

当前时间为:2021-07-30T15:41:32.099394
向前移动两个月后的时间为:2021-05-30T15:41:32.099394
向后移动三个月后的时间为:2021-10-30T15:41:32.099394

从输出结果可以看出:

  • 当前时间是2021年7月30日15点41分32秒。
  • 在当前时间上向前移动两个月,得到的时间是2021年5月30日15点41分32秒。
  • 在当前时间上向后移动三个月,得到的时间是2021年10月30日15点41分32秒。
注意事项
  • LocalDateTime类是线程安全的。
  • plusMonths()方法返回的是新的LocalDateTime实例,原实例没有改变。
  • 如果添加的月份数超出了该月的天数,那么日期会自动进行调整,例如2021年1月30日加上一个月,得到的日期是2月28日(因为2021年2月只有28天)。
  • plusMonths()方法还有其他重载形式,可以添加年、日等时间单位。