Math类的multiplyExact()方法用来计算两个参数的精确乘积,也就是把两个参数相乘的结果,返回为一个整数。它可以用来计算任意数据类型的乘积,包括int、long、float、double等。
使用方法
multiplyExact()方法接收两个参数,参数类型可以是int、long、float、double等,返回值类型也是int、long、float、double等。
int a = 3; int b = 4; int c = Math.multiplyExact(a, b); System.out.println(c); // 12
上面的代码中,a和b的值分别为3和4,执行multiplyExact()方法,返回结果为12,也就是a和b的乘积。
multiplyExact()方法还可以接收long、float、double类型的参数,并返回相应类型的结果:
long a = 3; long b = 4; long c = Math.multiplyExact(a, b); System.out.println(c); // 12
上面的代码中,a和b的值分别为3和4,执行multiplyExact()方法,返回结果为12,也就是a和b的乘积。
如果参数的乘积超出了数据类型的最大值,multiplyExact()方法会抛出ArithmeticException异常。
int a = Integer.MAX_VALUE; int b = 2; int c = Math.multiplyExact(a, b); System.out.println(c); // 抛出ArithmeticException异常
上面的代码中,a的值为Integer.MAX_VALUE,b的值为2,执行multiplyExact()方法,会抛出ArithmeticException异常,因为a和b的乘积超出了数据类型的最大值。
Math类的multiplyExact()方法用来计算两个参数的精确乘积,也就是把两个参数相乘的结果,返回为一个整数。它可以用来计算任意数据类型的乘积,包括int、long、float、double等,但如果参数的乘积超出了数据类型的最大值,multiplyExact()方法会抛出ArithmeticException异常。