📜  Java中的 LocalDate minusMonths() 方法及示例

📅  最后修改于: 2022-05-13 01:55:03.909000             🧑  作者: Mango

Java中的 LocalDate minusMonths() 方法及示例

Java中LocalDate类的minusMonths()方法用于从这个 LocalDate 中减去指定的月份数,并返回一个 LocalDate 的副本。
此方法在以下步骤中减去月份字段:

  • 从月份字段中减去月份。
  • 检查减去月份后的日期是否有效。
  • 如果日期无效,则方法将日期调整为最后一个有效日期。

例如,2018-07-31 减去一个月给出日期 2018-06-31,但这是无效结果,因此返回该月的最后一个有效日期 2018-06-30。此实例是不可变的,不受此影响方法调用。

句法:

public LocalDate minusMonths(long monthsToSubtract)

参数:此方法接受单个参数monthsToSubtract ,它表示要减去的月份,可能为负数。

返回值:此方法返回基于此日期减去月份的LocalDate ,而不是 null。

异常:如果结果超出支持的日期范围,此方法将引发DateTimeException

下面的程序说明了 minusMonths() 方法:
方案一:

// Java program to demonstrate
// LocalDate.minusMonths() method
  
import java.time.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create a LocalDate object
        LocalDate date
            = LocalDate.parse("2018-11-13");
  
        // print instance
        System.out.println("LocalDate before"
                           + " subtracting months: " + date);
  
        // subtract 15 months
        LocalDate returnvalue
            = date.minusMonths(15);
  
        // print result
        System.out.println("LocalDate after "
                           + " subtracting months: " + returnvalue);
    }
}
输出:
LocalDate before subtracting months: 2018-11-13
LocalDate after  subtracting months: 2017-08-13

方案二:

// Java program to demonstrate
// LocalDate.minusMonths() method
  
import java.time.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create a LocalDate object
        LocalDate date
            = LocalDate.parse("2018-12-31");
  
        // print instance
        System.out.println("LocalDate before"
                           + " subtracting months: " + date);
  
        // subtract 3 months
        LocalDate returnvalue
            = date.minusMonths(3);
  
        // print result
        System.out.println("LocalDate after "
                           + " subtracting months: " + returnvalue);
    }
}
输出:
LocalDate before subtracting months: 2018-12-31
LocalDate after  subtracting months: 2018-09-30

参考:
https://docs.oracle.com/javase/10/docs/api/java Java)