Java Math subtraherarExakt ()

Metoden Java Math subtractExact () subtraherar de angivna siffrorna och returnerar den.

Syntaxen för subtractExact()metoden är:

 Math.subtractExact(num1, num2)

Här subtractExact()är en statisk metod. Därför använder vi metoden med hjälp av klassnamnet Math.

subtrahera Exakt () parametrar

Den subtractExact()metod tar två parametrar.

  • num1 - värde från vilket num2 subtraheras
  • num2 - värde som subtraheras från num1

Obs! Datatypen för båda värdena bör vara antingen inteller long.

subtractExact () Returvärde

  • returnerar skillnaden mellan num1 och num2

Exempel 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 exemplet ovan har vi använt Math.subtractExact()metoden med intoch longvariablerna för att beräkna skillnaden.

Exempel 2: Math.subtractExact () kastar undantag

Metoden ger subtractExact()ett undantag om resultatet av skillnaden överskrider datatypen. Det vill säga resultatet bör ligga inom datatypen för specificerade 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 exemplet ovan är värdet på a det maximala intvärdet och värdet på b är -1 . När vi subtraherar a och b,

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

Därför subtractExact()kastar metoden integer overflowundantaget.

Rekommenderade handledning

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

Intressanta artiklar...