Java Math atņemt precīzu ()

Metode Java Math subtractExact () atņem norādītos skaitļus un atgriež tos.

Metodes sintakse subtractExact()ir šāda:

 Math.subtractExact(num1, num2)

Šeit subtractExact()ir statiska metode. Tādējādi mēs piekļūstam metodei, izmantojot klases nosaukumu Math,.

subtractExact () parametri

subtractExact()Metode ņem divus parametrus.

  • num1 - vērtība, no kuras atņem num2
  • num2 - vērtība, kas tiek atņemta no num1

Piezīme : datu tips abu vērtībām jābūt vai nu int, vai long.

atņemt precīzu () atgriešanās vērtību

  • atgriež starpību starp num1 un num2

1. piemērs: 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 ) )

Iepriekš minētajā piemērā mēs izmantojām Math.subtractExact()metodi ar intun longmainīgajiem, lai aprēķinātu starpību.

2. piemērs: Math.subtractExact () izmet izņēmumu

Metode subtractExact()rada izņēmumu, ja atšķirības rezultāts pārpilda datu tipu. Tas ir, rezultātam jābūt norādīto mainīgo datu veida diapazonā.

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

Iepriekš minētajā piemērā a vērtība ir maksimālā intvērtība un b vērtība -1 . Kad mēs atņemam a un b,

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

Tādējādi subtractExact()metode izslēdz integer overflowizņēmumu.

Ieteicamās konsultācijas

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

Interesanti raksti...