Java así como otros lenguajes contiene un conjunto de funciones predefinidas que facilitan la obtención de cálculos matemáticos como por ejemplo obtener la raíz cuadráda de un número o elevar otro a cierta potencia, las principales funciones de la clase Math se muestran a continuación.
■ Métodos de Math:
• abs(double): Devuelve el valor absoluto del número entero o decimal.
int n = -5;
System.out.println(Math.abs(n)); // Devolverá 5
• addExact(int, int): Devuelve la suma de dos enteros.
int x = 5, y = 6;
System.out.println(Math.addExact(x, y)); // Devolverá 11
• cbrt(int/double): Devuelve la raíz cúbica de un número.
int x = 2;
double y = 3.14;
System.out.println(Math.cbrt(x)); // Devolverá 1.2599
System.out.println(Math.cbrt(y)); // Devolverá 1.4643
• ceil(double): Redondea el número decimal recibido hacia el siguiente número superior.
double n = 4.3, m = 4.8, o = -4.7;
System.out.println(Math.ceil(n)); // Devolverá 5.0
System.out.println(Math.ceil(m)); // Devolverá 5.0System.out.println(Math.ceil(o)); // Devolverá -4.0
• exp(int/double): Devuelve la constante de Euler elevada al parámetro indicado.
double x = 5;
System.out.println(Math.exp(x)); // Devolverá 148.4131
• decrementExact(int): Regresa el valor de la variable recibida decrementado en 1.
int x = 5, y = 0;
System.out.println(decrementExact(x)); // Devolverá 4
System.out.println(decrementExact(y)); // Devolverá -1• floor(double): Redondea el número decimal recibido hacia el siguiente número inferior.
double n = 4.3, m = 4.8, o = -4.7;
System.out.println(Math.floor(n)); // Devolverá 4.0
System.out.println(Math.floor(m)); // Devolverá 4.0System.out.println(Math.floor(o)); // Devolverá -5.0
• incrementExact(int): Regresa el valor de la variable recibida incrementado en 1.
int x = 5, y = -1;
System.out.println(incrementExact(x)); // Devolverá 6
System.out.println(incrementExact(y)); // Devolverá 0• log(int/double): Devuelve el logaritmo natural de un número.
double x = 5;
System.out.println(Math.log(x)); // Devolverá 1.609437
• log10(int/double): Devuelve el logaritmo base 10 de un número.
double x = 5;
System.out.println(Math.log10(x)); // Devolverá 0.6989700
• max(int/double, int/double): Devuelve el mayor de los dos valores recibidos, ambos deben ser del mismo tipo.
int a = 5, b = 3;
double c = 4.25, d = 6.3;
System.out.println(Math.max(a, b)); // Devolverá 5
System.out.println(Math.max(c, d)); // Devolverá 6.3
• min(int/double, int/double): Devuelve el menor de los dos valores recibidos, ambos deben ser del mismo tipo.
int a = 5, b = 3;
double c = 4.25, d = 6.3;
System.out.println(Math.min(a, b)); // Devolverá 3
System.out.println(Math.min(c, d)); // Devolverá 4.25
• multiplyExact(int, int): Devuelve el producto exacto de los dos valores recibidos.
int a = 5, b = 10;
System.out.println(Math.min(a, 3)); // Devolverá 15
System.out.println(Math.min(b, a)); // Devolverá 50
• negateExact(int): Devuelve el valor de la variable recibida pero con el signo contrario.
int a = 5, b = -10;
System.out.println(Math.negateExact(a)); // Devolverá -5
System.out.println(Math.negateExact(b)); // Devolverá 10
• pow(a, b): Devuelve el resultado del primer número elevado a la potencia del segundo número, el número resultante será en formato decimal.
int a = 5, b = 2.5;
System.out.println(Math.pow(a, 3)); // Devolverá 125.0
System.out.println(Math.pow(a, b)); // Devolverá 55.9016
• random(): Devuelve un valor aleatorio mayor o igual que 0.0 y menor que 1.0.
System.out.println(Math.random());
• rint(double): Regresa el double redondeado hacia el entero más cercano.
double a = 3.49, b = 3.5;
System.out.println(Math.rint(a)); // Devolverá 3.0
System.out.println(Math.rint(b)); // Devolverá 4.0
• round(double): Devuelve el número redondeado a su valor más cercano positivo o negativo.
double a = 3.49, b = 3.5;
System.out.println(Math.round(a)); // Devolverá 3
System.out.println(Math.round(b)); // Devolverá 4
• signum(double): Determina el signo del número recibido devolviendo -1.0 si es negativo, 1.0 si es positivo, o simplemente 0 si es 0.
double a = -10.0, b = 0, c = 10.0;
System.out.println(Math.signum(a)); // Devolverá -1.0
System.out.println(Math.signum(b)); // Devolverá 0.0
• sqrt(): Devuelve la raíz cuadrada de un número en formato double.
int x = 9;
System.out.println(Math.sqrt(x)); // Devolverá 3
► Trigonométricas:
• sin(int/double): Devuelve el seno de un número.
int x = 25;
double y = 3.14;
System.out.println(Math.sin(x)); // Devolverá -0.13235
System.out.println(Math.sin(y)); // Devolverá 0.001592
• cos(int/double): Devuelve el coseno de un número.
int x = 25;
double y = 3.14;
System.out.println(Math.cos(x)); // Devolverá 0.99120
System.out.println(Math.cos(y)); // Devolverá -0.99999
• tan(int/double): Devuelve la tangente de un número.
int x = 25;
double y = 3.14;
System.out.println(Math.tan(x)); // Devolverá -0.13352
System.out.println(Math.tan(y)); // Devolverá -0.00159
• asin(int/double): Devuelve el arco seno de un número.
int x = 1;
double y = 0.8612;
System.out.println(Math.asin(x)); // Devolverá 1.57079632679
System.out.println(Math.asin(y)); // Devolverá 1.03762593845
• acos(): Devuelve el arco coseno de un número.
int x = 1;
double y = 0.8612;
System.out.println(Math.acos(x)); // Devolverá 0.0
System.out.println(Math.acos(y)); // Devolverá 0.533170
• atan(int/double): Devuelve el arco tangente de un número.
int x = 1;
double y = 0.8612;
System.out.println(Math.atan(x)); // Devolverá 0.78539816339
System.out.println(Math.atan(y)); // Devolverá 0.71096041214
■ Extra
• Mostrar la constante de Euler:
System.out.println(E);*
• Mostrar el valor de Pi:
System.out.println(PI);*
*Para esto debemos importar la librería Math:
import static java.lang.Math.*;
■ Llamar una función dentro de otra función
Podemos invocar un método dentro del argumento de otro método siempre y cuando lo que regrese el método de dentro sea del tipo del argumento que el método exterior recibe, por ejemplo:
int x = -81;
double raiz = Math.sqrt(Math.abs(x));
Lo anterior daría como resultado 9.0.
A la variable raiz se le asigna el resultado que regrese la función Math.sqrt la cual recibe como parámetro lo que la función Math.abs devuelva recibiendo como parámetro la variable "x".
■ Otra forma de invocar la función es directamente al momento de mostrar un resultado en pantalla, ya sea en Consola o en un Form:
• Consola:
System.out.println ("El resultado es: " + Math.sqrt(9));
• Label:
miJLabel.setText ("El resultado es: " + Math.sqrt(9))
gracias me has ayudado con mi investigacion! :D
ResponderEliminar