Java Math subtractExact ()

Die Java Math-Methode subtractExact () subtrahiert die angegebenen Zahlen und gibt sie zurück.

Die Syntax der subtractExact()Methode lautet:

 Math.subtractExact(num1, num2)

Hier subtractExact()ist eine statische Methode. Daher greifen wir über den Klassennamen auf die Methode zu Math.

subtractExact () Parameter

Die subtractExact()Methode akzeptiert zwei Parameter.

  • num1 - Wert, von dem num2 abgezogen wird
  • num2 - Wert, der von num1 abgezogen wird

Hinweis : Der Datentyp beider Werte sollte entweder intoder sein long.

subtractExact () Rückgabewert

  • Gibt die Differenz zwischen num1 und num2 zurück

Beispiel 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 ) )

Im obigen Beispiel haben wir die Math.subtractExact()Methode mit den Variablen intund verwendet long, um die Differenz zu berechnen.

Beispiel 2: Math.subtractExact () löst eine Ausnahme aus

Die Methode subtractExact()löst eine Ausnahme aus, wenn das Ergebnis der Differenz den Datentyp überschreitet. Das heißt, das Ergebnis sollte im Bereich des Datentyps der angegebenen Variablen liegen.

 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)); ) )

Im obigen Beispiel ist der Wert von a der Maximalwert intund der Wert von b ist -1 . Wenn wir a und b subtrahieren,

  2147483647 - (-1) => 2147483647 + 1 => 2147483648 // out of range of int type

Daher löst die subtractExact()Methode die integer overflowAusnahme aus.

Empfohlene Tutorials

  • Math.addExact ()
  • Math.multiplyExact ()

Interessante Beiträge...