📜  Java Math multipleExact()

📅  最后修改于: 2020-10-06 09:32:20             🧑  作者: Mango

Java Math的multipleExact()方法将指定的数字相乘并返回它。

 

multiplyExact()方法的语法为:

Math.multiplyExact(num1, num2)

在这里, multiplyExact()是一个静态方法。因此,我们使用类名Math来访问该方法。


multipleExact()参数

multiplyExact()方法采用两个参数。

  • num1-乘以num2的值
  • num2-乘以num1的值

注意 :这两个值的数据类型应为intlong


multipleExact()返回值
  • 返回num1num2的乘积

示例1:Java数学multipleExact()
import java.lang.Math;

class Main {
  public static void main(String[] args) {

    // create int variable
    int a = 5;
    int b = 6;

    // multiplyExact() with int arguments
    System.out.println(Math.multiplyExact(a, b));  // 30

    // create long variable
    long c = 7236L;
    long d = 1721L;

    // multiplyExact() with long arguments
    System.out.println(Math.multiplyExact(c, d));  // 12453156
  }
}

 

在上面的示例中,我们使用了带有intlong变量的Math.multiplyExact()方法来计算相应数字的乘积。


示例2:数学multipleExact()引发异常

如果multiplyExact()结果溢出数据类型,则multipliExact multiplyExact()方法将引发异常。也就是说,结果应在指定变量的数据类型范围内。

import java.lang.Math;

class Main {
  public static void main(String[] args) {

    // create int variable
    // maximum int value
    int a = 2147483647;
    int b = 2;

    // multiplyExact() with int arguments
    // throws exception
    System.out.println(Math.multiplyExact(a, b));
  }
}

在上述例子中,a的值是最大int,b的值是2。当我们将ab相乘时,

2147483647 * 2
=> 4294967294    // out of range of int type     

因此, multiplyExact()方法将引发integer overflow异常。


推荐的教程

  • Math.addExact()
  • Math.subtractExact()