Java Math.addExact() 方法
java.lang.Math.addExact() 返回参数的总和。如果结果溢出int或long,则将引发异常。
1 语法
public static int addExact(int a, int b)
public static long addExact(long a, long b)
2 参数
a :第一个值
b :第二个值
3 返回值
它返回其参数的总和。
如果参数之一是Integer.MAX_VALUE或Long.MAX_VALUE,它将引发ArithmeticException。
4 示例1
package com.yiidian;
/**
* 一点教程网: http://www.yiidian.com
*/
public class Demo
{
public static void main(String[] args)
{
int a = 469;
int b = 737;
// //输入两个正值,输出a和b的加法
System.out.println(Math.addExact(a, b));
}
}
输出结果为:
1206
5 示例2
package com.yiidian;
/**
* 一点教程网: http://www.yiidian.com
*/
public class Demo
{
public static void main(String[] args)
{
long a = 835;
long b = -1573;
// 输入两个值,输出a和b的加法
System.out.println(Math.addExact(a, b));
}
}
输出结果为:
-738
6 示例3
package com.yiidian;
/**
* 一点教程网: http://www.yiidian.com
*/
public class Demo
{
public static void main(String[] args)
{
int a = Integer.MAX_VALUE;
int b = 785;
// 输入整数溢出,输出AirthmeticException
System.out.println(Math.addExact(a, b));
}
}
输出结果为:
Exception in thread "main" java.lang.ArithmeticException: integer overflow
at java.lang.Math.addExact(Math.java:790)
at com.yiidian.Demo.main(Demo.java:13)
7 示例4
package com.yiidian;
/**
* 一点教程网: http://www.yiidian.com
*/
public class Demo
{
public static void main(String[] args)
{
long a = 25;
long b = Long.MAX_VALUE;
// 输入long溢出,输出AirthmeticException
System.out.println(Math.addExact(a, b));
}
}
输出结果为:
Exception in thread "main" java.lang.ArithmeticException: long overflow
at java.lang.Math.addExact(Math.java:809)
at com.yiidian.Demo.main(Demo.java:13)