La classe Java Math fornisce diversi metodi per lavorare sui calcoli matematici come min(), max(), avg(), sin(), cos(), tan(), round(), ceil(), floor(), abs( ) eccetera.
A differenza di alcuni metodi numerici della classe StrictMath, tutte le implementazioni della funzione equivalente della classe Math non possono definire per restituire gli stessi risultati bit per bit. Questo rilassamento consente l'implementazione con prestazioni migliori laddove non è richiesta una rigorosa riproducibilità.
Se la dimensione è int o long e i risultati superano l'intervallo di valori, i metodi addExact(), subtractExact(), multiplyExact() e toIntExact() lanciano un'ArithmeticException.
Per altre operazioni aritmetiche come incremento, decremento, divisione, valore assoluto e negazione, l'overflow si verifica solo con un valore minimo o massimo specifico. Dovrebbe essere controllato rispetto al valore massimo e minimo, a seconda dei casi.
Esempio 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)); } }Provalo adesso
Produzione:
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
Esempio 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)); } }Provalo adesso
Produzione:
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
Metodi matematici Java
IL java.lang.Math La classe contiene vari metodi per eseguire operazioni numeriche di base come il logaritmo, la radice cubica e le funzioni trigonometriche, ecc. I vari metodi matematici Java sono i seguenti:
Metodi matematici di base
Metodo | Descrizione |
---|---|
Matematica.abs() | Restituirà il valore assoluto del valore specificato. |
Matematica.max() | Restituisce il più grande tra due valori. |
Matematica.min() | Viene utilizzato per restituire il più piccolo tra due valori. |
Matematica.round() | Viene utilizzato per arrotondare i numeri decimali al valore più vicino. |
Matematica.sqrt() | Viene utilizzato per restituire la radice quadrata di un numero. |
Matematica.cbrt() | Viene utilizzato per restituire la radice cubica di un numero. |
Matematica.pow() | Restituisce il valore del primo argomento elevato alla potenza del secondo argomento. |
Segno.matematico() | Viene utilizzato per trovare il segno di un determinato valore. |
Matematica.ceil() | Viene utilizzato per trovare il valore intero più piccolo maggiore o uguale all'argomento o al numero intero matematico. |
Math.copySign() | Viene utilizzato per trovare il valore assoluto del primo argomento insieme al segno specificato nel secondo argomento. |
Matematica.nextAfter() | Viene utilizzato per restituire il numero in virgola mobile adiacente al primo argomento nella direzione del secondo argomento. |
Matematica.nextUp() | Restituisce il valore in virgola mobile adiacente a�d�nella direzione dell'infinito positivo. |
Matematica.nextDown() | Restituisce il valore in virgola mobile adiacente a�d�nella direzione dell'infinito negativo. |
Piano matematico() | Viene utilizzato per trovare il valore intero più grande che è inferiore o uguale all'argomento ed è uguale all'intero matematico di un valore doppio. |
Math.floorDiv() | Viene utilizzato per trovare il valore intero più grande che è inferiore o uguale al quoziente algebrico. |
Matematica.casuale() | Restituisce un valore doppio con un segno positivo, maggiore o uguale a 0,0 e inferiore a 1,0. |
Matematica.rint() | Restituisce il doppio valore più vicino all'argomento fornito e uguale all'intero matematico. |
Matematica.ipot() | Restituisce sqrt(x2�+y2) senza troppopieno o underflow intermedio. |
Matematica.ulp() | Restituisce la dimensione di un ulp dell'argomento. |
Math.getExponent() | Viene utilizzato per restituire l'esponente imparziale utilizzato nella rappresentazione di un valore. |
Math.IEEEresto() | Viene utilizzato per calcolare l'operazione di resto su due argomenti come prescritto dallo standard IEEE 754 e restituisce valore. |
Math.addExact() | Viene utilizzato per restituire la somma dei suoi argomenti, lanciando un'eccezione se il risultato eccede an�int o long. |
Math.subtractExact() | Restituisce la differenza degli argomenti, lanciando un'eccezione se il risultato eccede un valore an�int. |
Math.multiplyExact() | Viene utilizzato per restituire il prodotto degli argomenti, lanciando un'eccezione se il risultato eccede an�int o long. |
Math.incrementExact() | Restituisce l'argomento incrementato di uno, lanciando un'eccezione se il risultato va in overflow. |
Math.decrementExact() | Viene utilizzato per restituire l'argomento decrementato di uno, lanciando un'eccezione se il risultato eccede an�int o long. |
Math.negateExact() | Viene utilizzato per restituire la negazione dell'argomento, lanciando un'eccezione se il risultato eccede an�int o long. |
Math.toIntExact() | Restituisce il valore dell'argomento lungo, lanciando un'eccezione se il valore eccede e inint. |
Metodi matematici logaritmici
Metodo | Descrizione |
---|---|
Log matematico() | Restituisce il logaritmo naturale di un valore doppio. |
Matematica.log10() | Viene utilizzato per restituire il logaritmo in base 10 di un valore doppio. |
Matematica.log1p() | Restituisce il logaritmo naturale della somma dell'argomento e 1. |
Matematica.exp() | Restituisce E elevato alla potenza di un valore doppio, dove E è il numero di Eulero ed è pari a circa 2,71828. |
Matematica.expm1() | Viene utilizzato per calcolare la potenza di E e sottrarne uno. |
Metodi matematici trigonometrici
Metodo | Descrizione |
---|---|
Matematica.peccato() | Viene utilizzato per restituire il valore trigonometrico del seno di un valore doppio dato. |
Matematica.cos() | Viene utilizzato per restituire il valore coseno trigonometrico di un valore doppio dato. |
Matematica.tan() | Viene utilizzato per restituire il valore tangente trigonometrico di un valore doppio dato. |
Matematica.asin() | Viene utilizzato per restituire il valore arcoseno trigonometrico di un valore doppio dato |
Matematica.acos() | Viene utilizzato per restituire il valore trigonometrico dell'arco coseno di un valore doppio dato. |
Math.atan() | Viene utilizzato per restituire il valore trigonometrico Arcotangente di un valore doppio dato. |
Metodi matematici iperbolici
Metodo | Descrizione |
---|---|
Matematica.sinh() | Viene utilizzato per restituire il valore trigonometrico del coseno iperbolico di un valore doppio dato. |
Matematica.cosh() | Viene utilizzato per restituire il valore trigonometrico del seno iperbolico di un valore doppio dato. |
Matematica.tanh() | Viene utilizzato per restituire il valore della tangente iperbolica trigonometrica di un valore doppio dato. |
Metodi matematici angolari
Metodo | Descrizione |
---|---|
Matematica.aLauree | Viene utilizzato per convertire l'angolo in radianti specificato in un angolo equivalente misurato in gradi. |
Math.toRadians | Viene utilizzato per convertire l'angolo in gradi specificato in un angolo equivalente misurato in radianti. |