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 intsau 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 longpentru 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 intvaloarea 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 overflowexcepția.
Tutoriale recomandate
- Math.addExact ()
- Math.multiplyExact ()








