Curso de Java

Clase Math

Esta clase contiene variables de campo y métodos estáticos utilizados para realizar operaciones matemáticas que van desde el cálculo de una raíz cuadrada hasta el de funciones trigonométricas. Se van a comentar los menos conocidos. Para familiarizarse con el resto ir a la API.

  • static double ceil(double num): devuelve el double de tipo entero (double-entero, a partir de ahora) más cercano al argumento que se le pasa, yéndose hacia + infinito. Un double-entero es un número decimal cuya parte decimal es siempre 0.

Ejemplo:

System.out.println(Math.ceil(2.3);// muestra por consola 3.0

System.out.println(Math.ceil(0.895);// muestra por consola 1.0

System.out.println(Math.ceil(-1.87);// muestra por consola –1.0

System.out.println(Math.ceil(-0.9);// muestra por consola –0.0

  • static double floor(double num): ídem anterior, pero devolviendo el double-entero más cercano al argumento que se le pasa, yéndose hacia – infinito.

Ejemplo:

System.out.println(Math.floor(2.3);// muestra por consola 2.0

System.out.println(Math.floor(0.895);// muestra por consola 0.0

System.out.println(Math.floor(-1.87);// muestra por consola –2.0

System.out.println(Math.floor(-0.9);// muestra por consola –1.0

  • static double rint(double num): devuelve el double-entero redondeado y asociado al argumento que se le pasa, tomando como cifra base para el redondeo, la primera después de la coma del argumento, y siguiendo los criterios habituales de redondeo
NOTA: si la cifra base para el redondeo es mayor o igual que 5, se aumenta en una unidad la cifra anterior; si la cifra base es menor que 5, no se modifica la cifra anterior.

Si se quiere redondear a partir de una determinada cifra decimal, se multiplicará por la potencia de 10 que corresponda, se aplicará el método y, después, se dividirá entre la potencia de 10 por la que anteriormente se ha multiplicado.

Ejemplo:

System.out.println(Math.rint(0.891));// muestra por consola 1.0

Si se quisiera aproximar a dos decimales:

System.out.println(Math.rint(0.891*100)/100);// muestra por consola 0.89

Ahora conviene hacer los ejercicios 1, 2 y 3.


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de Java y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Clases envoltorio de las variables primitivas o wrapper classes

Estas clases pertenecen al paquete java.lang y son las siguientes: Byte, Short, Integer, Long, Float, Double, Boolean y Character. Uno de los usos más habituales de la clases envoltorio es la utilización de métodos estáticos que permiten obtener a partir de una String que almacena un número en forma de texto, el correspondiente valor numérico almacenado en la variable primitiva que interese.

Así, la clase Integer dispone del método "static int parseInt(String)" que transforma la String del argumento en un número que se almacena en la variable primitiva int.

Para el resto de las clases envoltorio se tienen los siguientes métodos:

Si se quiere almacenar la String 250 en una variable int se utilizaría el siguiente código:

Ejemplo:

Código fuente

Por consola:

135

125125

11


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de Java y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Clase Integer

Se va a estudiar la clase Integer. El estudio del resto de clases envoltorio es similar exceptuando Character y Boolean.


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de Java y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


CLASE ASOCIADA:

java.lang.Integer. Es una clase "final", es decir, no puede heredarse de ella (la herencia se tratará en temas posteriores).


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de Java y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


CONSTRUCTORES:

Los constructores son métodos especiales del mismo nombre que la clase a la que pertenecen y sin tipo de retorno, que se emplean para crear e inicializar objetos de una clase y que no admiten tipo de retorno. Cada clase perteneciente a la API de Java tiene los suyos propios y pueden estudiarse sin más que consultarla. Para crear un objeto de una clase se utilizará un constructor de la misma y la palabra reservada de Java new. Además de los constructores de clases de la API, pueden definirse constructores de clases propias realizadas por el programador, que no forman parte de la API (se verán más adelante).

  • Integer(int num): crea un objeto Integer en base al entero que se le pasa a su argumento.
  • Integer(String num): ídem anterior pero pasándole un entero almacenado en forma de String. Si el argumento no es un número almacenado en una String se lanza una NumberFormatException (se verá qué es una excepción más adelante)

Ejemplo de creación de un objeto Integer usando el segundo constructor:

Antes de estudiar los principales métodos de la clase se recuerdan los sistemas de numeración más extendidos para representar datos numéricos:


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de Java y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


MÉTODOS INTERESANTES:

Hay muchísimos métodos en cada clase de la API. En el curso se van a tratar en profundidad unos cuantos, abarcar todos sería imposible. La consulta a la API, aparte de la explicación que se haga, es fundamental para entender la funcionalidad de un método. Por eso, cada vez que se explique un método conviene consultarlo en la API. Un programador sin API está perdido.

  • static int parseInt(String num): convierte en un entero la cadena de texto que se le pasa al argumento. Si la cadena no es un número se produce una NumberFormatException. MUY USADO.
  • static int parseInt(String num, int base): ídem anterior, pero indicando en el segundo argumento el sistema de numeración (base 2, base 8, base 10, base 16, etc.) en el que se expresa el primer argumento.

Ejemplo:

String num="1001"; //Esto es un número binario o en base 2 almacenado en forma de String

System.out.println(Integer.parseInt(num,2)); //Por consola va a mostrarse 9.

  • static Integer valueOf(String num): crea un objeto Integer en base a la cadena de texto que se le pasa. Si la cadena no es un número se produce una NumberFormatException.
  • static String toHexString(int num): devuelve una cadena de texto cuyo contenido es el entero expresado en hexadecimal del entero expresado en decimal que se le pasa al argumento.
  • static String toOctalString(int num): ídem, pero ahora el contenido es un entero expresado en octal.
  • static String toBinaryString(int num): ídem, pero ahora el contenido es un entero expresado en binario.
  • int intValue(): devuelve el entero asociado al contenido de un objeto Integer. Los métodos anteriores, al ser estáticos, no precisan de un objeto Integer sobre el que aplicarlos; en cambio, este método sí.

Ejemplo 1:

Código fuente

Por consola:

Suma de 125 y 20 vale 145

126

Ejemplo 2:

Código fuente

Por consola:

47

47

47

47

Ahora se recomienda realizar el Ejercicio 4


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de Java y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Si desea obtener un acceso sin restricciones a los contenidos del curso de Java y disfrutar de todas las herramientas del aula virtual (Videos explicativos streaming, acceso a los foros, chat, ejercicios resueltos, la ayuda del tutor, audioconferencia, estudio de grabación, test y actividades de autoevaluación, etc...) puede inscribirse completamente gratis y comenzar a realizar de forma inmediata el curso.