Java Program to subtract integers and check for overflow


To check for Integer overflow, we need to check the Integer.MAX_VALUE with the subtracted integers result, Here, Integer.MAX_VALUE is the maximum value of an integer in Java.

Let us see an example wherein integers are subtracted and if the result is more than Integer.MAX_VALUE, then an exception is thrown.

The following is an example showing how to check for Integer overflow.

Example

 Live Demo

public class Demo {
   public static void main(String[] args) {
      int val1 = 9898999;
      int val2 = 8784556;
      System.out.println("Value1: "+val1);
      System.out.println("Value2: "+val2);
      long sub = (long)val1 - (long)val2;
      if (sub > Integer.MAX_VALUE) {
         throw new ArithmeticException("Overflow!");
      }
      // displaying subtraction result
      System.out.println("Subtraction Result: "+(int)sub);
   }
}

Output

Value1: 9898999
Value2: 8784556
Subtraction Result: 1114443

In the above example, we have taken the following two integers −

int val1 = 9898999;
int val2 = 8784556;

Now we will cast and subtract them to a long.

long sub = (long)val1 - (long)val2;

If the result is more than the maximum value, then an exception is thrown.

If (sub > Integer.MAX_VALUE) {
   throw new ArithmeticException("Overflow!");
}

Samual Sam
Samual Sam

Learning faster. Every day.

Updated on: 26-Jun-2020

761 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements