A Java Math subtractExact () metódus kivonja a megadott számokat és visszaadja azokat.
A subtractExact()
módszer szintaxisa :
Math.subtractExact(num1, num2)
Itt subtractExact()
van egy statikus módszer. Ezért vagyunk elérni a módszerrel az osztály nevét, Math
.
subtractExact () paraméterek
A subtractExact()
módszer két paramétert vesz fel.
- num1 - érték, amelyből a num2 kivonásra kerül
- num2 - a num1-ből levont érték
Megjegyzés : Mindkét érték adattípusának vagy int
vagy kell lennie long
.
subtractExact () Return Value
- a num1 és a num2 közötti különbséget adja vissza
1. példa: 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 ) )
A fenti példában a különbség kiszámításához a és a változókkal alkalmaztuk a Math.subtractExact()
módszert .int
long
2. példa: Math.subtractExact () Kivételt dob
A módszer subtractExact()
kivételt vet, ha a különbség eredménye túlcsordítja az adattípust. Vagyis az eredménynek a megadott változók adattípusának tartományán belül kell lennie.
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 fenti példában az a értéke a maximális, int
a b értéke -1 . Amikor levonjuk a és b értékét,
2147483647 - (-1) => 2147483647 + 1 => 2147483648 // out of range of int type
Ennélfogva a subtractExact()
módszer kiveti a integer overflow
kivételt.
Ajánlott oktatóanyagok
- Math.addExact ()
- Math.multiplyExact ()