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 an int.As subtractExact(int a, int b) is static, so
object creation is not required.
Syntax :
public static int subtractExact(int a, int b) Parameter : a : the first value b : 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 an int
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[]) { int a = 300 ; int b = 200 ; System.out.println(Math.subtractExact(a, b)); } } |
Output:
100
// 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[]) { int x = Integer.MIN_VALUE; int y = 10 ; System.out.println(Math.subtractExact(x, y)); } } |
Output:
Runtime Error : Exception in thread "main" java.lang.ArithmeticException: integer overflow at java.lang.Math.subtractExact(Math.java:829) at Gfg2.main(File.java:13)
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready.