English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java-Programm addiert Integer und überprüft Überlauf

Um Überläufe von Integer zu überprüfen, müssen wir das Ergebnis der addierten Ganzzahlen mit Integer.MAX_VALUE überprüfen. Hierbei ist Integer.MAX_VALUE der größte Wert für Ganzzahlen in Java.

Lassen Sie uns ein Beispiel betrachten, bei dem Ganzzahlen addiert werden und eine Ausnahme ausgelöst wird, wenn die Summe größer als Integer.MAX_VALUE ist.

Beispiel

public class Demo {
   public static void main(String[] args) {
      int a = 9897988;
      int b = 8798798;
      System.out.println("Wert"1: "+a);
      System.out.println("Wert"2: "+b);
      long sum = (long)a + (long)b;
      if (sum > Integer.MAX_VALUE) {
         throw new ArithmeticException("Ganzzahloberlauf!");
      }
      //Zeige Summe
      System.out.println("Summe: "+(int)sum);
   }
}

Ausgaberesultat

Wert1: 9897988
Wert2: 8798798
Summe: 18696786

In dem obigen Beispiel haben wir die folgenden beiden Ganzzahlen verwendet.

int val1 = 9897988;
int val2 = 8798798;

Nun werden wir projizieren und es zur long hinzufügen.

long sum = (long)val1 + (long)val2;

Wenn das Ergebnis größer als der Maximalwert ist, wird eine Ausnahme ausgelöst.

If (sum > Integer.MAX_VALUE) {
   throw new ArithmeticException("Überlauf!");
}