Open In App

Year atMonthDay() method in Java

Improve
Improve
Like Article
Like
Save
Share
Report

The atMonthDay(MonthDay) method of Year class in Java combines the current year object with a month-day object passed as parameter to it to create a LocalDate object.

Syntax:

public LocalDate atMonthDay(MonthDay monthDay)

Parameter: This method accepts a single parameter monthDay. It is the MonthDay object which specifies a month-day to use. It takes a valid MonthDay object and cannot be NULL.

Return Value: It returns a LocalDate object formed by the current year object and a valid MonthDate object passed as parameter to the function.

Note: If the current year is not a leap year and the MonthDay object passed as parameter specifies “29th February”, it will be automatically rounded to “28th February” in the resulting LocalDate object.

Below programs illustrate the atMonthDay(MonthDay) method of Year in Java:
Program 1:




// Program to illustrate the atMonthDay(MonthDay) method
  
import java.util.*;
import java.time.*;
  
public class GfG {
    public static void main(String[] args)
    {
        // Creates a Year object
        Year thisYear = Year.of(2017);
  
        // Creates a MonthDay object
        MonthDay monthDay = MonthDay.of(9, 15);
  
        // Creates a LocalDate with this
        // Year object and MonthDay passed to it
        LocalDate date = thisYear.atMonthDay(monthDay);
  
        System.out.println(date);
    }
}


Output:

2017-09-15

Program 2: Since 2018 is not a leap year, the day 29 will be rounded off to 28 in the below program.




// Program to illustrate the atMonthDay(MonthDay) method
  
import java.util.*;
import java.time.*;
  
public class GfG {
    public static void main(String[] args)
    {
        // Creates a Year object
        Year thisYear = Year.of(2018);
  
        // Creates a MonthDay object
        MonthDay monthDay = MonthDay.of(2, 29);
  
        // Creates a LocalDate with this
        // Year object and MonthDay passed to it
        LocalDate date = thisYear.atMonthDay(monthDay);
  
        System.out.println(date);
    }
}


Output:

2018-02-28

Reference: https://docs.oracle.com/javase/8/docs/api/java/time/Year.html#atMonthDay-java.time.MonthDay-



Last Updated : 27 Nov, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads