Monday, June 15, 2026
HomeLanguagesJavaYearMonth minus(long,unit) method in Java with Examples

YearMonth minus(long,unit) method in Java with Examples

The minus(long, unit) method of YearMonth class is used to return a copy of this Year-month after subtracting the specified amount of TemporalUnit from this Year-month object.An exception is thrown, If the specified unit cannot be subtracted from Year-month. This instance is immutable and unaffected by this method call.

Syntax:

public YearMonth minus(long amountToSubtract, TemporalUnit unit)

Parameters: This method accepts two parameters:

  • amountToSubtract: This parameter represents the amount of the unit to subtract from the result.
  • unit: This parameter represents the unit of the amount to subtract.

Return Value: This method returns a Year-month based on this Year-month with the specified amount subtracted.

Exception: This method throws following Exceptions:

  • DateTimeException – This exception is thrown if the subtraction cannot be made.
  • UnsupportedTemporalTypeException – This exception is thrown if the unit is not supported.
  • ArithmeticException – This exception is thrown if numeric overflow occurs.

Below programs illustrate the minus(long, unit) method:

Program 1:




// Java program to demonstrate
// YearMonth.minus(long, unit) method
  
import java.time.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
        // Create a YearMonth object
        YearMonth thisYearMonth = YearMonth.of(2017, 8);
  
        // print instance
        System.out.println("YearMonth :"
                           + thisYearMonth);
  
        // apply minus(long, unit) method
        // subtracting 20 Years
        YearMonth value
            = thisYearMonth.minus(20, ChronoUnit.YEARS);
  
        // print result
        System.out.println("After subtraction YearMonth: "
                           + value);
    }
}


Output:

YearMonth :2017-08
After subtraction YearMonth: 1997-08

Program 2:




// Java program to demonstrate
// YearMonth.minus(long, unit) method
  
import java.time.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
        // Create a YearMonth object
        YearMonth thisYearMonth = YearMonth.of(2019, 12);
  
        // print instance
        System.out.println("YearMonth :"
                           + thisYearMonth);
  
        // apply minus(long, unit) method
        // subtracting 30 Months
        YearMonth value
            = thisYearMonth.minus(30, ChronoUnit.MONTHS);
  
        // print result
        System.out.println("After subtraction YearMonth: "
                           + value);
    }
}


Output:

YearMonth :2019-12
After subtraction YearMonth: 2017-06

References:
https://docs.oracle.com/javase/10/docs/api/java/time/YearMonth.html#minus(long, java.time.temporal.TemporalUnit)

RELATED ARTICLES

Most Popular

Dominic
32515 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6897 POSTS0 COMMENTS
Nicole Veronica
12013 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12109 POSTS0 COMMENTS
Shaida Kate Naidoo
7019 POSTS0 COMMENTS
Ted Musemwa
7262 POSTS0 COMMENTS
Thapelo Manthata
6976 POSTS0 COMMENTS
Umr Jansen
6964 POSTS0 COMMENTS