Java Math subtractExact ()

Metoda Java Math subtractExact () odejmuje określone liczby i zwraca je.

Składnia subtractExact()metody to:

 Math.subtractExact(num1, num2)

Tutaj subtractExact()jest metoda statyczna. Stąd mamy dostęp do metody z użyciem nazwy klasy, Math.

subtractExact () Parametry

subtractExact()Sposób dwa parametry.

  • num1 - wartość, od której jest odejmowane num2
  • num2 - wartość odejmowana od num1

Uwaga : Typ danych obu wartości powinien być albo intalbo long.

subtractExact () Wartość zwracana

  • zwraca różnicę między num1 i num2

Przykład 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 ) )

W powyższym przykładzie użyliśmy Math.subtractExact()metody ze zmiennymi inti longdo obliczenia różnicy.

Przykład 2: Math.subtractExact () zgłasza wyjątek

Metoda subtractExact()zgłasza wyjątek, jeśli wynik różnicy przepełnia typ danych. Oznacza to, że wynik powinien mieścić się w zakresie typu danych określonych zmiennych.

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

W powyższym przykładzie wartość a jest intwartością maksymalną, a wartość b wynosi -1 . Kiedy odejmujemy a i b,

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

Dlatego subtractExact()metoda zgłasza integer overflowwyjątek.

Zalecane samouczki

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

Interesujące artykuły...