English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Java Math multiyExact()方法将指定的数字相乘并返回。
multiplyExact()方法的语法为:
Math.multiplyExact(num1, num2)
注意:multiplyExact()是静态方法。因此,我们可以使用类名来访问该方法Math。
num1 / num2 - 要返回其乘积的第一个和第二个值
注意:这两个值的数据类型应为int或long。
返回两个值的乘积
import java.lang.Math; class Main { public static void main(String[] args) { //创建int变量 int a = 5; int b = 6; //带有int参数的multiplyExact() System.out.println(Math.multiplyExact(a, b)); // 30 //创建long变量 long c = 7236L; long d = 1721L; //带有long类型参数的multipliExact() System.out.println(Math.multiplyExact(c, d)); // 12453156 } }
在上面的示例中,我们使用了带有int和long变量的Math.multiplyExact()方法来计算各个数字的乘积。
如果乘法结果超出数据类型范围,则multiplyExact()方法将引发异常。也就是说,结果应在指定变量的数据类型范围内。
import java.lang.Math; class Main { public static void main(String[] args) { //创建int变量。 //最大int值 int a = 2147483647; int b = 2; //带有int参数的multiplyExact() //引起异常 System.out.println(Math.multiplyExact(a, b)); } }
Nel caso d'esempio sopra, il valore di a è il valore massimo dell'int e il valore di b è2Dopo che a e b sono stati moltiplicati
2147483647 * 2 => 4294967294 // Oltre al raggio del tipo int
Quindi, il metodo multiplyExact() provoca un'eccezione di overflow intero.