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!