Metodas „Java Math subtractExact ()“ atima nurodytus skaičius ir grąžina jį.
subtractExact()
Metodo sintaksė yra tokia:
Math.subtractExact(num1, num2)
Čia subtractExact()
yra statinis metodas. Taigi, mes prieiname metodą naudodami klasės pavadinimą Math
.
subtractExact () parametrai
subtractExact()
Metodas trunka dvi parametrus.
- num1 - reikšmė, iš kurios atimamas num2
- num2 - vertė, atimta iš num1
Pastaba : abiejų reikšmių duomenų tipas turėtų būti int
arba long
.
subtractExact () grąžinimo vertė
- pateikia skirtumą tarp num1 ir num2
1 pavyzdys: 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 ) )
Pirmiau pateiktame pavyzdyje, mes panaudojome Math.subtractExact()
metodą su int
ir long
kintamųjų apskaičiuoti skirtumą.
2 pavyzdys: Math.subtractExact () meta išimtį
Metodas subtractExact()
išmeta išimtį, jei skirtumo rezultatas perpildo duomenų tipą. Tai reiškia, kad rezultatas turėtų būti nurodytų kintamųjų duomenų tipo diapazone.
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)); ) )
Ankstesniame pavyzdyje a reikšmė yra didžiausia int
vertė, o b vertė yra -1 . Kai atimsime a ir b,
2147483647 - (-1) => 2147483647 + 1 => 2147483648 // out of range of int type
Vadinasi, subtractExact()
metodas yra integer overflow
išimtis.
Rekomenduojamos pamokos
- Math.addExact ()
- Math.multiplyExact ()