Java Math subtractExact ()

Метод Java Math subtractExact () віднімає вказані числа і повертає їх.

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

 Math.subtractExact(num1, num2)

Ось subtractExact()статичний метод. Таким чином, ми доступ до методу з використанням імені класу, Math.

subtractExact () Параметри

subtractExact()Метод приймає два параметри.

  • num1 - значення, з якого віднімається num2
  • num2 - значення, яке віднімається від num1

Примітка : Тип даних обох значень має бути intабо long.

subtractExact () Повернене значення

  • повертає різницю між числом1 та числом2

Приклад 1: Java Math.subtractExact ()

 import java.lang.Math; class Main ( public static void main(String() args) ( // create int variable int a = 54; int b = 30; // subtractExact() with int arguments System.out.println(Math.subtractExact(a, b)); // 24 // create long variable long c = 72345678l; long d = 17654321l; // subtractExact() with long arguments System.out.println(Math.subtractExact(c, d)); // 54691357 ) )

У наведеному вище прикладі ми використовували Math.subtractExact()метод зі змінними intта і longдля обчислення різниці.

Приклад 2: Math.subtractExact () кидає виняток

Метод subtractExact()видає виняток, якщо результат різниці переповнює тип даних. Тобто, результат повинен знаходитись у діапазоні типу даних зазначених змінних.

 import java.lang.Math; class Main ( public static void main(String() args) ( // create int variable // maximum int value int a = 2147483647; int b = -1; // subtractExact() with int arguments // throws exception System.out.println(Math.subtractExact(a, b)); ) )

У наведеному вище прикладі значення a - це максимальне intзначення, а значення b - -1 . Коли ми віднімаємо a і b,

  2147483647 - (-1) => 2147483647 + 1 => 2147483648 // out of range of int type

Отже, subtractExact()метод видає integer overflowвиняток.

Рекомендовані навчальні посібники

  • Math.addExact ()
  • Math.multiplyExact ()

Цікаві статті...