The subtractFrom(Temporal) method of Duration Class in java.time package is used subtract this duration to the specified temporal object, passed as the parameter.
Syntax:
public Temporal subtractFrom?(Temporal temporalObject)
Parameters: This method accepts a parameter temporalObject which is the amount to be adjusted in this duration. It should not be null.
Return Value: This method returns an object of the same type with the temporalObject adjusted to it.
Exception: This method throws:
- DateTimeException: if unable to subtract.
- ArithmeticException: if numeric overflow occurs.
Below examples illustrate the Duration.subtractFrom() method:
Example 1:
// Java code to illustrate subtractFrom() method   import java.time.*;   public class GFG {     public static void main(String[] args)     {           // Duration 1 using parse() method         Duration duration1             = Duration.parse( "P2DT3H4M" );           // Get the time to be adjusted         LocalDateTime currentTime             = LocalDateTime.now();           System.out.println( "Original time: "                            + currentTime);           // Adjust the time         // using subtractFrom() method         System.out.println(             duration1                 .subtractFrom(currentTime));     } } |
Original time: 2018-11-26T06:48:30.256 2018-11-24T03:44:30.256
Example 2:
// Java code to illustrate subtractFrom() method   import java.time.*;   public class GFG {     public static void main(String[] args)     {           // Duration         Duration duration2             = Duration.ofDays(- 5 );           // Get the time to be adjusted         LocalDateTime currentTime             = LocalDateTime.now();           System.out.println( "Original time: "                            + currentTime);           // Adjust the time         // using subtractFrom() method         System.out.println(             duration2                 .subtractFrom(currentTime));     } } |
Original time: 2018-11-26T06:48:33.319 2018-12-01T06:48:33.319