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