Il metodo Java Math subtractExact () sottrae i numeri specificati e li restituisce.
La sintassi del subtractExact()
metodo è:
Math.subtractExact(num1, num2)
Ecco subtractExact()
un metodo statico. Quindi, stiamo accedendo il metodo che utilizza il nome della classe, Math
.
subtractExact () Parametri
Il subtractExact()
metodo accetta due parametri.
- num1 - valore da cui viene sottratto num2
- num2 - valore che viene sottratto da num1
Nota : il tipo di dati di entrambi i valori deve essere int
o long
.
subtractExact () Valore restituito
- restituisce la differenza tra num1 e num2
Esempio 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 ) )
Nell'esempio sopra, abbiamo utilizzato il Math.subtractExact()
metodo con le variabili int
e long
per calcolare la differenza.
Esempio 2: Math.subtractExact () genera un'eccezione
Il metodo subtractExact()
genera un'eccezione se il risultato della differenza supera il tipo di dati. Ovvero, il risultato dovrebbe essere compreso nell'intervallo del tipo di dati delle variabili 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)); ) )
Nell'esempio precedente, il valore di a è il int
valore massimo e il valore di b è -1 . Quando sottraiamo aeb,
2147483647 - (-1) => 2147483647 + 1 => 2147483648 // out of range of int type
Quindi, il subtractExact()
metodo genera l' integer overflow
eccezione.
Tutorial consigliati
- Math.addExact ()
- Math.multiplyExact ()