LocalDate plusMonths() method in Java with Examples
The plusMonths() method of LocalDate class in Java is used to add the number of specified months in this LocalDate and return a copy of LocalDate.
This method adds the months field in the following steps:
- Add the months to the month-of-year field.
- Check if the date after adding months is valid or not.
- If date is invalid then method adjust the day-of-month to the last valid day.
For example, 2018-08-31 plus one month gives date 2018-09-31 but this is invalid result, so the last valid day of the month, 2018-09-30, is returned.This instance is immutable and unaffected by this method call.
Syntax:
public LocalDate plusMonths(long monthsToAdd)
Parameters: This method accepts a single parameter monthsToAdd which represents the months to add, may be negative.
Return Value: This method returns a LocalDate based on this date with the months added, not null.
Exception: This method throws DateTimeException if the result exceeds the supported date range.
Below programs illustrate the plusMonths() method:
Program 1:
// Java program to demonstrate // LocalDate.plusMonths() 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" + " adding months: " + date); // add 5 months LocalDate returnvalue = date.plusMonths( 5 ); // print result System.out.println( "LocalDate after " + " adding months: " + returnvalue); } } |
LocalDate before adding months: 2018-11-13 LocalDate after adding months: 2019-04-13
Program 2:
// Java program to demonstrate // LocalDate.plusMonths() 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" + " adding months: " + date); // add 9 months LocalDate returnvalue = date.plusMonths( 9 ); // print result System.out.println( "LocalDate after " + " adding months: " + returnvalue); } } |
LocalDate before adding months: 2018-12-31 LocalDate after adding months: 2019-09-30
References:
https://docs.oracle.com/javase/10/docs/api/java/time/LocalDate.html#plusMonths(long)