Java LocalDate.minusYears()方法

原文:https://www.studytonight.com/java-examples/java-localdate-minusyears-method

Java minusYears()方法用于从本地日期中减去指定的年份。它返回这个LocalDate的一个副本,减去指定的年数。

此方法分三步减去指定的年份字段:

  1. 从年份字段中减去输入年份

  2. 检查结果日期是否无效

  3. 如有必要,将每月的某一天调整为最后一个有效日期

例如,2008-02-29(闰年)减去一年将导致无效日期 2007-02-29(标准年)。取而代之的是选择该月的最后一个有效日期 2007-02-28,而不是返回无效结果。

句法

public LocalDate minusYears(long yearsToSubtract)

参数:

指定年数需要一个长型的参数。

返回:

它在减去年份后返回一个本地日期。

举例时间:

在这个例子中,我们从本地日期中减去一年。minusYear()方法在减去指定年份后返回一个新的日期。请看下面的例子。

import java.time.LocalDate; 
public class DateDemo {

    public static void main(String[] args){  

        LocalDate localDate = LocalDate.of(2009, 10, 10);
        System.out.println(localDate);
        localDate = localDate.minusYears(1);
        System.out.println("New date : "+localDate);
    }
}

2009-10-10 新日期:2008-10-10

另一个例子的时间:

如果减去年份后,日期无效,则结果将是日期的最后一个有效日期。看,我们从闰年中减去一年,导致日期无效,所以编译器返回日期的最后一天。

import java.time.LocalDate; 
public class DateDemo {

    public static void main(String[] args){  

        LocalDate localDate = LocalDate.of(2012, 02, 29);
        System.out.println(localDate);
        localDate = localDate.minusYears(1);
        System.out.println("New date : "+localDate);
    }
}

2012-02-29 新日期:2011-02-28

实时示例:

试着用一个真实的例子,用我们强大的在线 Java 编译器立即执行代码。