Třída Java Math poskytuje několik metod pro práci s matematickými výpočty, jako je min(), max(), avg(), sin(), cos(), tan(), round(), ceil(), floor(), abs( ) atd.
Na rozdíl od některých numerických metod třídy StrictMath nemohou všechny implementace ekvivalentní funkce třídy Math definovat, aby vracely bit po bitu stejné výsledky. Toto uvolnění umožňuje implementaci s lepším výkonem tam, kde není vyžadována přísná reprodukovatelnost.
Pokud je velikost int nebo long a výsledky překračují rozsah hodnot, metody addExact(),�subtractExact(),�multiplyExact() a�toIntExact()�vyvolají�aritmetickou výjimku.
U ostatních aritmetických operací, jako je přírůstek, dekrement, dělení, absolutní hodnota a přetečení negace, dochází pouze k určité minimální nebo maximální hodnotě. Mělo by být porovnáno s maximální a minimální hodnotou podle potřeby.
Pří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)); } }Otestujte to hned
Výstup:
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
Pří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)); } }Otestujte to hned
Výstup:
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
Matematické metody Java
The java.lang.Math třída obsahuje různé metody pro provádění základních numerických operací, jako je logaritmus, krychlová odmocnina a goniometrické funkce atd. Různé matematické metody java jsou následující:
Základní matematické metody
Metoda | Popis |
---|---|
Math.abs() | Vrátí absolutní hodnotu dané hodnoty. |
Math.max() | Vrací největší ze dvou hodnot. |
Math.min() | Používá se k vrácení nejmenší ze dvou hodnot. |
Math.round() | Používá se k zaokrouhlování desetinných čísel na nejbližší hodnotu. |
Math.sqrt() | Používá se k vrácení druhé odmocniny čísla. |
Math.cbrt() | Používá se k vrácení třetí odmocniny čísla. |
Math.pow() | Vrátí hodnotu prvního argumentu umocněného na druhý argument. |
Math.sign() | Slouží k nalezení znaménka dané hodnoty. |
Math.ceil() | Používá se k nalezení nejmenší celočíselné hodnoty, která je větší nebo rovna argumentu nebo matematickému celému číslu. |
Math.copySign() | Používá se k nalezení absolutní hodnoty prvního argumentu spolu se znaménkem uvedeným v druhém argumentu. |
Math.nextAfter() | Používá se k vrácení čísla s plovoucí desetinnou čárkou vedle prvního argumentu ve směru druhého argumentu. |
Math.nextUp() | Vrací hodnotu s plovoucí desetinnou čárkou sousedící s�d�ve směru kladného nekonečna. |
Math.nextDown() | Vrací hodnotu s plovoucí desetinnou čárkou sousedící s�d�ve směru záporného nekonečna. |
Math.floor() | Používá se k nalezení hodnoty největšího celého čísla, která je menší nebo rovna argumentu a rovná se matematickému celému číslu dvojité hodnoty. |
Math.floorDiv() | Používá se k nalezení největší celočíselné hodnoty, která je menší nebo rovna algebraickému kvocientu. |
Math.random() | Vrací �dvojitou�hodnotu s kladným znaménkem, větší nebo rovné �0,0�a menší než�1,0. |
Math.rint() | Vrací hodnotu double, která je nejblíže danému argumentu a rovná se matematickému celému číslu. |
Math.hypot() | Vrátí sqrt(x2�+y2) bez mezilehlého přepadu nebo podtečení. |
Math.ulp() | Vrací velikost ulp argumentu. |
Math.getExponent() | Používá se k vrácení nezaujatého exponentu použitého při reprezentaci a�hodnoty. |
Math.IEEEremainder() | Používá se k výpočtu zbývající operace na dvou argumentech, jak je předepsáno standardem IEEE 754, a vrací hodnotu. |
Math.addExact() | Používá se k vrácení součtu svých argumentů a vyvolá výjimku, pokud výsledek přeteče an�int nebo long. |
Math.subtractExact() | Vrátí rozdíl argumentů a vyvolá výjimku, pokud výsledek přeteče an�int. |
Math.multiplyExact() | Používá se k vrácení součinu argumentů a vyvolá výjimku, pokud výsledek přeteče an�int nebo long. |
Math.incrementExact() | Vrátí argument zvýšený o jedničku a vyvolá výjimku, pokud výsledek přeteče an�int. |
Math.decrementExact() | Používá se k vrácení argumentu sníženého o jedničku a vyvolá výjimku, pokud výsledek přeteče an�int nebo long. |
Math.negateExact() | Používá se k vrácení negace argumentu a vyvolání výjimky, pokud výsledek přeteče an�int nebo long. |
Math.toIntExact() | Vrátí hodnotu dlouhého argumentu a vyvolá výjimku, pokud hodnota přeteče o int. |
Logaritmické matematické metody
Metoda | Popis |
---|---|
Math.log() | Vrací přirozený logaritmus dvojité hodnoty. |
Math.log10() | Používá se k vrácení základních 10 logaritmů �dvojité�hodnoty. |
Math.log1p() | Vrátí přirozený logaritmus součtu argumentu a 1. |
Math.exp() | Vrací E umocněné na „dvojitou“ hodnotu, kde E je Eulerovo číslo a je přibližně rovno 2,71828. |
Math.expm1() | Slouží k výpočtu mocniny E a odečtení jedničky od ní. |
Trigonometrické matematické metody
Metoda | Popis |
---|---|
Math.sin() | Používá se k vrácení trigonometrické sinusové hodnoty dané dvojité hodnoty. |
Math.cos() | Používá se k vrácení trigonometrické hodnoty kosinus dané dvojité hodnoty. |
Math.tan() | Používá se k vrácení trigonometrické hodnoty tečny dané dvojité hodnoty. |
Math.asin() | Používá se k vrácení trigonometrické hodnoty Arc Sine dané dvojité hodnoty |
Math.acos() | Používá se k vrácení trigonometrické Arc Cosine hodnoty dané dvojnásobné hodnoty. |
Math.atan() | Používá se k vrácení trigonometrické Arc Tangent hodnoty dané dvojité hodnoty. |
Hyperbolické matematické metody
Metoda | Popis |
---|---|
Math.sinh() | Používá se k vrácení trigonometrické hodnoty hyperbolického kosinu dané dvojité hodnoty. |
Math.cosh() | Používá se k vrácení trigonometrické hodnoty hyperbolického sinusu dané dvojnásobné hodnoty. |
Math.tanh() | Používá se k vrácení hodnoty trigonometrické hyperbolické tečny dané dvojité hodnoty. |
Úhlové matematické metody
Metoda | Popis |
---|---|
Math.toDegrees | Používá se k převodu zadaného radiánského úhlu na ekvivalentní úhel měřený ve stupních. |
Math.toRadians | Používá se k převodu zadaného úhlu stupňů na ekvivalentní úhel měřený v radiánech. |