Home »
Java »
Java Reference »
Java Duration Class
Java Duration Class | minus() Method with Example
Duration Class minus() method: Here, we are going to learn about the minus() method of Duration Class with its syntax and example.
Submitted by Preeti Jain, on May 16, 2020
Duration Class minus() method
Syntax:
public Duration minus(Duration d);
public Duration minus(long amt, TemporalUnit t_unit);
- minus() method is available in java.time package.
- minus(Duration d) method is used to subtract the given Duration from this Duration and returns the Duration.
- minus(long amt, TemporalUnit t_unit) method is used to subtract the given amount in the given units from this Duration and return the Duration.
- These methods may throw an exception at the time of performing subtraction.
ArithmeticException: This exception may throw when the calculated result exceeds the limit to represent this object.
- These are non-static methods and it is accessible with class objects and if we try to access these methods with the class name then we will get an error.
Parameter(s):
-
In the first case, minus(Duration d),
- Duration d – represents the Duration to be subtracted from this Duration.
-
In the first case, minus(long amt, TemporalUnit t_unit),
- long amt – represents the amount in units to be subtracted from this Duration.
- TemporalUnit t_unit – represents the unit to measure the given amount.
Return value:
In both the cases, the return type of the method is Duration,
- In the first case, it returns the Duration that holds the value subtracted the given duration from this Duration.
- In the second case, it returns the Duration that holds the value subtracted the given amount in a unit from this Duration.
Example:
// Java program to demonstrate the example
// of minus() method of Duration
import java.time.*;
import java.time.temporal.*;
public class MinusOfDuration {
public static void main(String args[]) {
long amt = 10;
// Instantiates two Duration objects
Duration du1 = Duration.ofMinutes(3);
Duration du2 = Duration.parse("P2DT2H20M20S");
// Display du1, du2
System.out.println("du1: " + du1);
System.out.println("du2: " + du2);
System.out.println("amt to subtract: " + amt);
System.out.println();
// subtracts the given duration
// from this Duration du2 and returns
// the Duration i.e. here we subtract
// the given 3 minutes from this du2 that holds
// the value of 2D:2H:20M:20S
Duration minus_val = du2.minus(du1);
// Display minus_val
System.out.println("du2.minus(du1): " + minus_val);
// subtracts the given amount
// in the given unit from this Duration
// and returns the Duration i.e.
// here we are subtracting the amt
// 10 in minutes unit from this du2
// that holds the value of 2D:2H:20M:20S
minus_val = du2.minus(amt, ChronoUnit.MINUTES);
// Display minus_val
System.out.println("du2.minus(amt,ChronoUnit.MINUTES): " + minus_val);
}
}
Output
du1: PT3M
du2: PT50H20M20S
amt to subtract: 10
du2.minus(du1): PT50H17M20S
du2.minus(amt,ChronoUnit.MINUTES): PT50H10M20S