The atMonth(int) method of Year class in Java combines the current year object with a month passed as parameter to it to create a YearMonth object.
Syntax:
public YearMonth atMonth(int month)
Parameter: This method accepts a single parameter month. It is the month-of-year to use. It takes an integer value between 1 and 12 and cannot be NULL.
Return Value: It returns a YearMonth object formed by the current year object and a valid month passed as parameter to the function.
Exception: This method throws a DateTimeException, if the month passed to it as parameter is invalid.
Below programs illustrate the atMonth(int) method of Year in Java:
Program 1:
// Program to illustrate the atMonth(int) 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 YearMonth with this
// Year object and Month passed to it
YearMonth yearMonth = thisYear.atMonth( 4 );
System.out.println(yearMonth);
}
} |
2017-04
Program 2: To illustrate Exception.
// Program to illustrate the atMonth(int) 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 );
try {
// Creates a YearMonth with this
// Year object and Month passed to it
YearMonth yearMonth = thisYear.atMonth( 16 );
System.out.println(yearMonth);
}
catch (Exception e) {
System.out.println(e);
}
}
} |
java.time.DateTimeException: Invalid value for MonthOfYear (valid values 1 - 12): 16
Reference: https://docs.oracle.com/javase/8/docs/api/java/time/Year.html#atMonth-