Metoda Java Math subtractExact () scade numerele specificate și le returnează.
Sintaxa subtractExact()
metodei este:
Math.subtractExact(num1, num2)
Iată subtractExact()
o metodă statică. Prin urmare, accesăm metoda folosind numele clasei Math
,.
subtractExact () Parametri
subtractExact()
Metoda ia doi parametri.
- num1 - valoare din care se scade num2
- num2 - valoare care se scade din num1
Notă : Tipul de date al ambelor valori trebuie să fie fie int
sau long
.
subtractExact () Valoare returnată
- returnează diferența dintre num1 și num2
Exemplul 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 ) )
În exemplul de mai sus, am folosit Math.subtractExact()
metoda cu variabilele int
și long
pentru a calcula diferența.
Exemplul 2: Math.subtractExact () Excepție de aruncare
Metoda subtractExact()
aruncă o excepție dacă rezultatul diferenței depășește tipul de date. Adică, rezultatul trebuie să se încadreze în intervalul tipului de date al variabilelor specificate.
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)); ) )
În exemplul de mai sus, valoarea lui a este int
valoarea maximă, iar valoarea lui b este -1 . Când scădem a și b,
2147483647 - (-1) => 2147483647 + 1 => 2147483648 // out of range of int type
Prin urmare, subtractExact()
metoda aruncă integer overflow
excepția.
Tutoriale recomandate
- Math.addExact ()
- Math.multiplyExact ()