¿Qué es una clase en java?
Las clases en Java (Java
Class) son plantillas para la creación de objetos, en lo que se conoce como
programación orientada a objetos, la cual es una de los principales paradigmas
de desarrollo de software en la actualidad.
Clases asociadas
a los tipos primitivos
Los tipos predefinidos boolean, char, int, long, float y double son
tipos simples, no son clases. Para facilitar la programación en Java se han creado
clases asociadas a los tipos predefinidos. Estas clases proporcionan métodos
útiles para convertir cadenas de texto a otros tipos, para imprimir los números
con diversos formatos y para describir los tipos simples.
Estas clases generan automáticamente una instancia cuando se usan
tipos simples en contextos en los que se espera un objeto. Además, pueden utilizarse
en expresiones en donde se espera un tipo simple.
Las clases asociadas a los tipos primitivos son:
Clase
|
Tipo primitivo
asociado
|
Boolean boolean
|
boolean
|
Character
|
char
|
Integer
|
int
|
Long
|
long
|
Float
|
float
|
Double
|
double
|
Estas clases tienen los siguientes métodos:
Método constructor a partir de un valor de tipo simple
Character letra = new Character('A');
Integer numero = new Integer(10);
Método constructor que recibe una cadena de texto y la traduce al
tipo simple
Integer numero = new Integer("120");
Método toString() que transforma el valor almacenado en una cadena
Integer numero = new Integer("100");
System.out.println(numero.toString());
Método equals() para comparar el valor almacenado
Integer numero1 = new Integer("100");
Integer numero2 = new Integer("101");
System.out.println(numero2.equals(numero1));
La clase Math
La
clase Math contiene constantes y
métodos de uso común en matemáticas. Todas las operaciones que se realizan en
esta clase utilizan el tipo double. Contiene la constante pi (Math.PI) y el número de Euler
(Math.E). En las funciones
trigonométricas, los ángulos se expresan en radianes y los métodos devuelven
valores de tipo double. La clase Math incluye funciones como potenciación, redondeo,
cuadrado, raíz cuadrada y muchas más.
Esta clase es como una biblioteca de métodos estáticos que nos permite realizar operaciones matemáticas.
Los metodos son
los siguientes:
- abs( double a );
- round( double a ); Devuelve el entero más cercano a un número suministrado
- min( int a, int b ); Devuelve el menor de los dos numeros suministrados
- max(int a, int b ); Devuelve el mayor de los dos numeros suministrados
- floor( double a );
- ceil( double a );
- random( ); Devuelve un numero aleatorio entre el 0 y el numero asignado
Como esto son
bibliotecas, hay que importarlas a la clase y esto se escribe antes de la
clase, de esta forma:
import java.lang.Math.*;
// Importamos la biblioteca Math. El asterisco
significa, importar todos los paquetes dentro de Math
public class Ejem01{
public static
void main(String[ ]args){
}
}
Intenta proporcionar un
numero decimal, ejecuta y observa el resultado en la consola, por ejemplo yo te
voy a colocar este:
import java.lang.Math.*;
public class Ejem01{
public static
void main(String[ ]args){
System.out.println( Math.round(4.9) );
}
}
El resultado en la consola
sera 5.
Lo que hace es redondear el
numero decimal al numero mas cercano, como es 4.9 el mas cercano es 5. Si fuese 4.2 el resultado seria 4.
Recuerda tambien que los
decimales no se separan con comas, sino con puntos.
Pasamos ahora al metodo max()
y min(). intenta hacer el siguiente ejemplo:
import java.lang.Math.*;
public class Ejem01{
public static
void main(String[ ]args){
System.out.println( Math.min(5,2) );
System.out.println( Math.max(5,2) );
}
}
El resultado para min()
sera 2, y el resultado para max() sera 5. Los numeros se pueden
sustituir por variables.
Ahora vamos a ver el metodo
random().
import java.lang.Math.*;
public class Ejem01{
public static
void main(String[ ]args){
System.out.println( Math.round(Math.random() * 50) );
}
}
Aqui, lo que le hemos
indicado es que nos muestre por consola un numero aleatorio comprendido entre
el 0 y el 50. Cada vez que ejecutaras el programa, te mostrara un numero
diferente comprendido entre los numeros 0 y el 50.
Primero aplicamos un metodo
"round()" y dentro de sus parametros, aplicamos el metodo
"random()".
¿Por qué aplicamos primero
un metodo "round()"?
Pues, para que el numero que seleccione al
azar, que no sea decimal y lo redondee.
Nota: cuando queremos crear
un numero aleatorio y guardarlo en una variable, al número aleatorio deberemos
indicarle de que tipo es, aqui el ejemplo:
int azar = (int) Math.round(Math.random()*50);