Java Math vähennäTarkka ()

Java Math subtractExact () -menetelmä vähentää määritetyt numerot ja palauttaa ne.

Menetelmän syntaksi subtractExact()on:

 Math.subtractExact(num1, num2)

Tässä subtractExact()on staattinen menetelmä. Siksi pääsemme menetelmään käyttämällä luokan nimeä Math.

subtractExact () -parametrit

subtractExact()Menetelmässä otetaan kaksi parametria.

  • num1 - arvo, josta num2 vähennetään
  • num2 - arvo, joka vähennetään num1: stä

Huomaa : Molempien arvojen tietotyypin tulee olla joko inttai long.

subtractExact () Palautusarvo

  • palauttaa num1: n ja num2: n välisen eron

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

Yllä olevassa esimerkissä olemme käyttäneet Math.subtractExact()menetelmää muuttujien intja longmuuttujien kanssa eron laskemiseksi.

Esimerkki 2: Math.subtractExact () heittää poikkeuksen

Menetelmä subtractExact()heittää poikkeuksen, jos eron tulos ylittää tietotyypin. Toisin sanoen tuloksen tulisi olla määriteltyjen muuttujien tietotyypin alueella.

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

Edellä olevassa esimerkissä a: n arvo on suurin intarvo ja b: n arvo on -1 . Kun vähennämme a ja b,

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

Siksi subtractExact()menetelmä heittää integer overflowpoikkeuksen.

Suositellut oppaat

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

Mielenkiintoisia artikkeleita...