Java Math multiplyExact ()

Метод Java Math multiplyExact () умножает указанные числа и возвращает их.

Синтаксис multiplyExact()метода:

 Math.multiplyExact(num1, num2)

Вот multiplyExact()статический метод. Следовательно, мы получаем доступ к методу, используя имя класса Math.

Параметры multiplyExact ()

multiplyExact()Метод принимает два параметра.

  • num1 - значение, которое умножается на num2
  • num2 - значение, которое умножается на num1

Примечание . Тип данных обоих значений должен быть либо intили long.

multiplyExact () Возвращаемое значение

  • возвращает произведение num1 и num2

Пример 1: Java Math multiplyExact ()

 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 ) )

В приведенном выше примере, мы использовали Math.multiplyExact()метод с intи longпеременных для вычисления произведения соответствующих чисел.

Пример 2: Math multiplyExact () выдает исключение

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 . Когда мы умножаем a и b,

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

Следовательно, multiplyExact()метод вызывает integer overflowисключение.

Рекомендуемые учебные пособия

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

Интересные статьи...