Ejemplo de uso:
Elevando 2 a una potencia, porque pow devuelve un doble como respuesta, luego se requiere una conversión a int.
clase pública Principal {
    público estático vacío principal(String[] argumentos) < spanstyle="color:#666666">{
       int a = 2;
       int b = (< span style="color:#b00040">int)Matemáticas.pow(a,2);
    }
}

flotante r = 5.0f o doble r = 5.0 El valor 5.0 es un número representado como una fracción decimal (tiene un entero y una parte fraccionaria). En informática, estos números se denominan reales
Número real es un número que tiene una parte entera y una parte fraccionaria. Las partes enteras y fraccionarias están separadas entre sí por un punto, no por una coma como en matemáticas.
Incluso si la parte fraccionaria del número es cero, como en la variable \(r\) del ejemplo, el traductor seguirá creando una variable real en la memoria. El punto, por así decirlo, una señal para el traductor de que es necesario crear una variable real. 

Números muy grandes y muy pequeños  se escriben usando "coma flotante" (en el denominado formato científico).  
En formato científico, un número se representa como mantisa (parte significativa del número) y exponente. Cuando se anota, la mantisa y el exponente están separados entre sí por la letra e (que indica 10 hasta cierto punto). 
Por ejemplo, puede almacenar el valor de la carga de un electrón ( \(1.60217662 \times 10^{-19}\) C) en un variable, escribiendo de la siguiente forma float El = 1.60217662e-19f //para una orden positiva, se puede omitir el signo + o dobleEl= 1.60217662e-19 Casi todos los números reales no se pueden almacenar en la memoria de la computadora con perfecta precisión, ya que se asigna una cantidad limitada de bits para su almacenamiento. Por lo tanto, al calcular con números reales se acumulan errores asociados a la inexactitud de la representación. Además, cuanto menos espacio se asigne, mayor será este error. Para reducir el error en Java se utiliza el tipo double, que almacena un número real con doble precisión en memoria (ocupa ocho bytes en memoria, mientras que el escriba \(flotante \)- 4 bytes)

Entrar

Puede ingresar varias variables reales del flujo de entrada y escribirlas en variables de la manera estándar: doble x = en.siguienteDoble(); float y = in.nextFloat(); El primer número va en la variable \(x\), el segundo va en la variable \(y\)

Salida

Java tiene varias formas de mostrar números reales.

1) System.out.printf para salida de consola simple
De forma predeterminada, cuando se utiliza printf, los números reales se imprimen con una precisión de hasta 6 decimales. Pero hay casos que deben generarse con una precisión diferente. En este caso, debe especificar cuánta familiaridad asignar después del punto decimal. doble a=0,5; Sistema.salida.printf("%f",a); // en pantalla 0.500000 Sistema.salida.printf("%.2f",a); // en pantalla 0.5 Sistema.salida.printf("%10.2f",a); // puede establecer el número total de posiciones asignadas para la salida del número System.out.printf("%.2e",a); // mostrar número en formato científico con precisión de 2 dígitos 2) DecmialFormat para obtener una cadena de un número usando un patrón dado
La clase DecmialFormat le permite controlar la salida de ceros iniciales y finales, prefijos y sufijos, separadores de miles y separadores de diez mil, pero esto hace que el código sea un poco más complejo. doble a = 123,45; DecimalFormat df = new DecimalFormat("#.###"); Cadena formateada = df.format(a); System.out.println(formateado); //123.45
Entrada Plantilla Salida Nota
123,45 #.# 123,5 Mostrado hasta un decimal con redondeo
123,45 #.### 123,45 Muestra el número entero sin ceros a la izquierda
123,45 #.0 123,5 Mostrado hasta un decimal con redondeo
123,45 #.000 123.450 Se muestra hasta el tercer carácter con un cero insignificante al final
Cuando trabaje con números reales, puede utilizar la ya familiar clase Math, que contiene una gran cantidad de funciones integradas. 
Al resolver problemas, a menudo es necesario redondear números reales a los valores enteros más cercanos. Hay dos funciones para esto.

RECUERDA
1
con conversión de tipo explícita ( float x=1.5f; int y = int (x) )  -  la parte fraccionaria de un número real se corta (y = 1) 
2 Matemáticas.piso(x) -  devuelve el entero más grande menor o igual a \(x\) (redondear hacia abajo)
3 Matemáticas.ceil(x) -  devuelve el entero más pequeño mayor o igual que \(x\) (redondear hacia arriba)

Aquí están las funciones más útiles contenidas en el módulo cmath.
Función Descripción
Redondeo
redondo(x) Redondea un número al entero más cercano. Si la parte fraccionaria del número es 0,5, entonces el número se redondea al número entero más próximo.
piso(x) Redondea un número hacia abajo ("piso"), por lo tanto piso(1.5) == 1piso(-1.5) ==  ; -2
techo(x) Redondea un número hacia arriba ("techo"), mientras que ceil(1.5) == 2ceil(-1.5) ==  ; -1
abs(x) Módulo (valor absoluto).
Raíces, logaritmos
raíz cuadrada(x) Raíz cuadrada. Uso: y = sqrt(x)
pow(x, y) Eleva x a la potencia y. \(x^y\)
log(x) Logaritmo natural. 
exp(x) La base de los logaritmos naturales e = 2,71828...
Trigonometría
sen(x) Seno de un ángulo especificado en radianes
cos(x) Coseno de un ángulo especificado en radianes
bronceado(x) La tangente de un ángulo especificado en radianes
asin(x) Arcsine, devuelve el valor en radianes
acos(x) Arcocoseno, devuelve el valor en radianes
atan(x) Arcotangente, devuelve el valor en radianes
atan2(y, x) Ángulo polar (en radianes) del punto (x, y).