The java.lang.Math.subtractExact() is a built-in math function in java which returns the difference of the
arguments.It throws an exception if the result overflows a long.As subtractExact(long x, long y) is static,
so object creation is not required.
Syntax :
public static long subtractExact(long x, long y) Parameter : x : the first value y : the second value to be subtracted from the first Return : This method returns the difference of the arguments. Exception : It throws ArithmeticException - if the result overflows a long.
Example :To show working of java.lang.Math.subtractExact() method.
// Java program to demonstrate working // of java.lang.Math.subtractExact() method import java.lang.Math;   class Gfg1 {       // driver code     public static void main(String args[])     {         long x = 11111111111l;         long y = 999l;           System.out.println(Math.subtractExact(x, y));     } } |
Output:
11111110112
// Java program to demonstrate working // of java.lang.Math.subtractExact() method import java.lang.Math;   class Gfg2 {       // driver code     public static void main(String args[])     {         long a = Long.MIN_VALUE;         long b = 1 ;           System.out.println(Math.subtractExact(a, b));     } } |
Output:
Runtime Error : Exception in thread "main" java.lang.ArithmeticException: long overflow at java.lang.Math.subtractExact(Math.java:849) at Gfg2.main(File.java:13)
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!