Java Math trækker eksakt ()

Metoden Java Math subtractExact () fratrækker de angivne tal og returnerer det.

Metodens syntaks subtractExact()er:

 Math.subtractExact(num1, num2)

Her subtractExact()er en statisk metode. Derfor får vi adgang til metoden ved hjælp af klassens navn Math,.

subtractExact () Parametre

Den subtractExact()metode tager to parametre.

  • num1 - værdi, hvorfra num2 trækkes
  • num2 - værdi, der trækkes fra num1

Bemærk : Datatypen for begge værdier skal være enten inteller long.

subtractExact () Return Value

  • returnerer forskellen mellem num1 og num2

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

I ovenstående eksempel har vi brugt Math.subtractExact()metoden med intog longvariablerne til at beregne forskellen.

Eksempel 2: Math.subtractExact () kaster undtagelse

Metoden subtractExact()kaster en undtagelse, hvis resultatet af forskellen overløber datatypen. Det vil sige, at resultatet skal være inden for området for datatypen for specificerede variabler.

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

I ovenstående eksempel er værdien af ​​a den maksimale intværdi, og værdien af ​​b er -1 . Når vi trækker a og b fra,

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

Derfor subtractExact()kaster metoden integer overflowundtagelsen.

Anbefalede vejledninger

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

Interessante artikler...