Java Math subtractExact ()

Metoda Java Math subtractExact () odšteje določene številke in jih vrne.

Sintaksa subtractExact()metode je:

 Math.subtractExact(num1, num2)

Tu subtractExact()je statična metoda. Zato smo dostop do metode z uporabo imena razreda, Math.

subtractExact () Parametri

subtractExact()Postopek traja dva parametra.

  • num1 - vrednost, od katere se odšteje num2
  • num2 - vrednost, ki se odšteje od num1

Opomba : Podatkovni tip obeh vrednosti mora biti intali long.

subtractExact () Vrnjena vrednost

  • vrne razliko med num1 in num2

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

V zgornjem primeru smo uporabili Math.subtractExact()metodo z intin longspremenljivk za izračun razlike.

Primer 2: Math.subtractExact () vrže izjemo

Metoda subtractExact()vrže izjemo, če rezultat razlike preseže podatkovni tip. To pomeni, da bi moral biti rezultat v območju podatkovnega tipa določenih spremenljivk.

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

V zgornjem primeru je vrednost a največja intvrednost, vrednost b pa -1 . Ko odštejemo a in b,

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

Zato subtractExact()metoda vrže integer overflowizjemo.

Priporočene vaje

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

Zanimive Članki...