要检查Integer溢出,我们需要使用添加的整数结果检查Integer.MAX_VALUE。在这里,Integer.MAX_VALUE是Java中整数的最大值。
让我们看一个示例,其中添加了整数,并且如果总和大于Integer.MAX_VALUE,那么将引发异常。
public class Demo {
public static void main(String[] args) {
int a = 9897988;
int b = 8798798;
System.out.println("Value1: "+a);
System.out.println("Value2: "+b);
long sum = (long)a + (long)b;
if (sum > Integer.MAX_VALUE) {
throw new ArithmeticException("整数溢出!");
}
//显示总和
System.out.println("Sum: "+(int)sum);
}
}输出结果
Value1: 9897988 Value2: 8798798 Sum: 18696786
在上面的示例中,我们采用了以下两个整数。
int val1 = 9897988; int val2 = 8798798;
现在,我们将投射并将其添加到long中。
long sum = (long)val1 + (long)val2;
如果结果大于最大值,则引发异常。
If (sum > Integer.MAX_VALUE) {
throw new ArithmeticException("Overflow!");
}