Методът на Java Math subtractExact () изважда посочените числа и ги връща.
Синтаксисът на subtractExact()
метода е:
Math.subtractExact(num1, num2)
Тук subtractExact()
е статичен метод. Следователно имаме достъп до метода, като използваме името на класа Math
,.
subtractExact () Параметри
В subtractExact()
метода се извършва по два параметъра.
- num1 - стойност, от която се изважда num2
- num2 - стойност, която се изважда от num1
Забележка : Типът данни на двете стойности трябва да бъде int
или long
.
subtractExact () Върната стойност
- връща разликата между num1 и num2
Пример 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 ()