Java Math trieda poskytuje niekoľko metód na prácu s matematickými výpočtami ako min(), max(), avg(), sin(), cos(), tan(), round(), ceil(), floor(), abs( ) atď.
Na rozdiel od niektorých numerických metód triedy StrictMath, všetky implementácie ekvivalentnej funkcie triedy Math nemôžu definovať, aby vracali bit po bite rovnaké výsledky. Toto uvoľnenie umožňuje implementáciu s lepším výkonom tam, kde sa nevyžaduje prísna reprodukovateľnosť.
Ak je veľkosť int alebo long a výsledky presahujú rozsah hodnôt, metódy addExact(),�subtractExact(),�multiplyExact() a�toIntExact()�vyvolajú�aritmetickú výnimku.
Ostatné aritmetické operácie, ako je prírastok, znižovanie, delenie, absolútna hodnota a pretečenie negácie, sa vyskytujú iba pri špecifickej minimálnej alebo maximálnej hodnote. Podľa potreby by sa mala porovnať s maximálnou a minimálnou hodnotou.
Príklad 1
public class JavaMathExample1 { public static void main(String[] args) { double x = 28; double y = 4; // return the maximum of two numbers System.out.println('Maximum number of x and y is: ' +Math.max(x, y)); // return the square root of y System.out.println('Square root of y is: ' + Math.sqrt(y)); //returns 28 power of 4 i.e. 28*28*28*28 System.out.println('Power of x and y is: ' + Math.pow(x, y)); // return the logarithm of given value System.out.println('Logarithm of x is: ' + Math.log(x)); System.out.println('Logarithm of y is: ' + Math.log(y)); // return the logarithm of given value when base is 10 System.out.println('log10 of x is: ' + Math.log10(x)); System.out.println('log10 of y is: ' + Math.log10(y)); // return the log of x + 1 System.out.println('log1p of x is: ' +Math.log1p(x)); // return a power of 2 System.out.println('exp of a is: ' +Math.exp(x)); // return (a power of 2)-1 System.out.println('expm1 of a is: ' +Math.expm1(x)); } }Vyskúšajte to
Výkon:
Maximum number of x and y is: 28.0 Square root of y is: 2.0 Power of x and y is: 614656.0 Logarithm of x is: 3.332204510175204 Logarithm of y is: 1.3862943611198906 log10 of x is: 1.4471580313422192 log10 of y is: 0.6020599913279624 log1p of x is: 3.367295829986474 exp of a is: 1.446257064291475E12 expm1 of a is: 1.446257064290475E12
Príklad 2
public class JavaMathExample2 { public static void main(String[] args) { double a = 30; // converting values to radian double b = Math.toRadians(a); // return the trigonometric sine of a System.out.println('Sine value of a is: ' +Math.sin(a)); // return the trigonometric cosine value of a System.out.println('Cosine value of a is: ' +Math.cos(a)); // return the trigonometric tangent value of a System.out.println('Tangent value of a is: ' +Math.tan(a)); // return the trigonometric arc sine of a System.out.println('Sine value of a is: ' +Math.asin(a)); // return the trigonometric arc cosine value of a System.out.println('Cosine value of a is: ' +Math.acos(a)); // return the trigonometric arc tangent value of a System.out.println('Tangent value of a is: ' +Math.atan(a)); // return the hyperbolic sine of a System.out.println('Sine value of a is: ' +Math.sinh(a)); // return the hyperbolic cosine value of a System.out.println('Cosine value of a is: ' +Math.cosh(a)); // return the hyperbolic tangent value of a System.out.println('Tangent value of a is: ' +Math.tanh(a)); } }Vyskúšajte to
Výkon:
Sine value of a is: -0.9880316240928618 Cosine value of a is: 0.15425144988758405 Tangent value of a is: -6.405331196646276 Sine value of a is: NaN Cosine value of a is: NaN Tangent value of a is: 1.5374753309166493 Sine value of a is: 5.343237290762231E12 Cosine value of a is: 5.343237290762231E12 Tangent value of a is: 1.0
Java matematické metódy
The java.lang.Math trieda obsahuje rôzne metódy na vykonávanie základných numerických operácií, ako je logaritmus, odmocnina kocky a goniometrické funkcie atď. Rôzne matematické metódy java sú nasledovné:
Základné matematické metódy
Metóda | Popis |
---|---|
Math.abs() | Vráti absolútnu hodnotu danej hodnoty. |
Math.max() | Vráti najväčšiu z dvoch hodnôt. |
Math.min() | Používa sa na vrátenie najmenšej z dvoch hodnôt. |
Math.round() | Používa sa na zaokrúhlenie desatinných čísel na najbližšiu hodnotu. |
Math.sqrt() | Používa sa na vrátenie druhej odmocniny čísla. |
Math.cbrt() | Používa sa na vrátenie tretej odmocniny čísla. |
Math.pow() | Vracia hodnotu prvého zvyšovaného argumentu na moc k druhému argumentu. |
Math.sign() | Používa sa na nájdenie znamienka danej hodnoty. |
Math.ceil() | Používa sa na nájdenie najmenšej celočíselnej hodnoty, ktorá je väčšia alebo rovná argumentu alebo matematickému celému číslu. |
Math.copySign() | Používa sa na nájdenie absolútnej hodnoty prvého argumentu spolu so znamienkom špecifikovaným v druhom argumente. |
Math.nextAfter() | Používa sa na vrátenie čísla s pohyblivou rádovou čiarkou vedľa prvého argumentu v smere k druhému argumentu. |
Math.nextUp() | Vráti hodnotu s pohyblivou rádovou čiarkou susediacu s�d�v smere kladného nekonečna. |
Math.nextDown() | Vráti hodnotu s pohyblivou rádovou čiarkou susediacu s�d�v smere záporného nekonečna. |
Math.floor() | Používa sa na nájdenie najväčšej celočíselnej hodnoty, ktorá je menšia alebo rovná argumentu a rovná sa matematickému celému číslu dvojitej hodnoty. |
Math.floorDiv() | Používa sa na nájdenie najväčšej celočíselnej hodnoty, ktorá je menšia alebo rovná algebraickému kvocientu. |
Math.random() | Vracia �dvojitú�hodnotu s kladným znamienkom väčším alebo rovným�0,0�a menším ako�1,0. |
Math.rint() | Vráti hodnotu double, ktorá je najbližšie k danému argumentu a rovná sa matematickému celému číslu. |
Math.hypot() | Vráti sqrt(x2�+y2) bez medziľahlého prepadu alebo podtečenia. |
Math.ulp() | Vráti veľkosť ulp argumentu. |
Math.getExponent() | Používa sa na vrátenie nezaujatého exponentu použitého pri reprezentácii hodnoty. |
Math.IEEEremainder() | Používa sa na výpočet operácie zvyšku na dvoch argumentoch, ako to predpisuje štandard IEEE 754, a vracia hodnotu. |
Math.addExact() | Používa sa na vrátenie súčtu svojich argumentov a vyvolá výnimku, ak výsledok pretečie an�int alebo long. |
Math.subtractExact() | Vráti rozdiel argumentov a vyvolá výnimku, ak výsledok pretečie int. |
Math.multiplyExact() | Používa sa na vrátenie súčinu argumentov a vyvolá výnimku, ak výsledok pretečie an�int alebo dlhý. |
Math.incrementExact() | Vracia argument zvýšený o jednu a vyvoláva výnimku, ak výsledok pretečie int. |
Math.decrementExact() | Používa sa na vrátenie argumentu zníženého o jednu, čím sa vyvolá výnimka, ak výsledok pretečie int alebo dlhý. |
Math.negateExact() | Používa sa na vrátenie negácie argumentu a vyvolá výnimku, ak výsledok pretečie an�int alebo dlhý. |
Math.toIntExact() | Vráti hodnotu „dlhého“ argumentu a vyvolá výnimku, ak hodnota prekročí int. |
Logaritmické matematické metódy
Metóda | Popis |
---|---|
Math.log() | Vracia prirodzený logaritmus „dvojitej“ hodnoty. |
Math.log10() | Používa sa na vrátenie základných 10 logaritmov �double�hodnoty. |
Math.log1p() | Vráti prirodzený logaritmus súčtu argumentu a 1. |
Math.exp() | Vráti E umocnenú na „dvojitú“ hodnotu, kde E je Eulerovo číslo a je približne rovné 2,71828. |
Math.expm1() | Používa sa na výpočet mocniny E a odpočítanie jednej od nej. |
Trigonometrické matematické metódy
Metóda | Popis |
---|---|
Math.sin() | Používa sa na vrátenie trigonometrickej sínusovej hodnoty danej dvojitej hodnoty. |
Math.cos() | Používa sa na vrátenie trigonometrickej hodnoty kosínus danej dvojitej hodnoty. |
Math.tan() | Používa sa na vrátenie trigonometrickej tangentovej hodnoty danej dvojitej hodnoty. |
Math.asin() | Používa sa na vrátenie trigonometrickej hodnoty Arc Sine danej dvojitej hodnoty |
Math.acos() | Používa sa na vrátenie trigonometrickej hodnoty Arc Cosine danej dvojitej hodnoty. |
Math.atan() | Používa sa na vrátenie trigonometrickej hodnoty Arc Tangent danej dvojitej hodnoty. |
Hyperbolické matematické metódy
Metóda | Popis |
---|---|
Math.sinh() | Používa sa na vrátenie trigonometrickej hodnoty hyperbolického kosínusu danej dvojnásobnej hodnoty. |
Math.cosh() | Používa sa na vrátenie trigonometrickej hodnoty hyperbolického sínusu danej dvojitej hodnoty. |
Math.tanh() | Používa sa na vrátenie trigonometrickej hyperbolickej tangenty danej dvojitej hodnoty. |
Uhlové matematické metódy
Metóda | Popis |
---|---|
Math.toDegrees | Používa sa na prevod špecifikovaného radiánskeho uhla na ekvivalentný uhol meraný v stupňoch. |
Math.toRadians | Používa sa na prevod špecifikovaného uhla stupňov na ekvivalentný uhol meraný v radiánoch. |