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

Programme Java multipliant des entiers et vérifiant les débordements

Pour vérifier l'overflow de Integer, nous devons vérifier le résultat de la multiplication de Integer.MAX_VALUE avec un entier, ici, Integer.MAX_VALUE est la valeur maximale des entiers en Java.

Voyons un exemple où les entiers sont multipliés et où une exception est levée si le résultat est supérieur à Integer.MAX_VALUE.

Voici un exemple de vérification de l'overflow de Integer.

Exemple

public class Demo {
   public static void main(String[] args) {
      int val1 = 9898;
      int val2 = 6784;
      System.out.println("Valeur1: \+val1);
      System.out.println("Valeur2: \+val2);
      long mul = (long)val1 * (long)val2;
      if (mul > Integer.MAX_VALUE) {
         throw new ArithmeticException("Dépassement de capacité !");
      }
      //Afficher la multiplication
      System.out.println("Résultat de la multiplication: ");+(int)mul);
   }
}

Résultat de la sortie

Valeur1: 9898
Valeur2: 6784
Résultat de la multiplication: 67148032

Dans l'exemple précédent, nous avons utilisé les deux entiers suivants.

int val1 = 9898;
int val2 = 6784;

Maintenant, nous le projetons et le doublons.

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

Si le résultat est supérieur à la valeur maximale, une exception est levée.

Si (mul > Integer.MAX_VALUE) {
   throw new ArithmeticException("Dépassement de capacité !");
}