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

Programa Java para multiplicar enteros y verificar desbordamiento

Para verificar el desbordamiento de Integer, necesitamos verificar el resultado de la multiplicación de Integer.MAX_VALUE con un entero, aquí, Integer.MAX_VALUE es el valor máximo de los enteros en Java.

Veamos un ejemplo en el que se multiplican enteros y si el resultado es mayor que Integer.MAX_VALUE, se lanza una excepción.

A continuación, se muestra un ejemplo de cómo verificar el desbordamiento de Integer.

Ejemplo

public class Demo {
   public static void main(String[] args) {
      int val1 = 9898;
      int val2 = 6784;
      System.out.println("Valor1: \+val1);
      System.out.println("Valor2: \+val2);
      long mul = (long)val1 * (long)val2;
      if (mul > Integer.MAX_VALUE) {
         throw new ArithmeticException("¡Desbordamiento!");
      }
      //Mostrar multiplicación
      System.out.println("Resultado de la multiplicación:");+(int)mul);
   }
}

Resultado de la salida

Valor1: 9898
Valor2: 6784
Resultado de la multiplicación: 67148032

En el ejemplo anterior, hemos utilizado los siguientes dos enteros.

int val1 = 9898;
int val2 = 6784;

Ahora, lo proyectamos y duplicamos.

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

Si el resultado es mayor que el valor máximo, se lanza una excepción.

If (mul > Integer.MAX_VALUE) {
   throw new ArithmeticException("¡Desbordamiento!");
}