Redondear en java

Hola!
Necesito fijar el formato de un numero, para que tenga solamente dos cifras decimales (p.e. 254,64) de forma que si el numero es más largo, lo redondee correctamente.
¿Hay alguna función de java que sirva para esto?
Muchas gracias

1 respuesta

1
Respuesta de
He estado echándole un vistazo a tu problema y solo he encontrado una solución, usar la clase NumberFormat.
Aquí tienes un ejemplo sobre como usarla:
//valor que vamos a convertir
double x=2.33333;
//Obtenemos una instancia de
//la clase
NumberFormat nf = NumberFormat.getInstance();
//Establecemos el numero de decimales
nf.setMaximumFractionDigits(2);
//Convertimos el numero
String st=nf.format(x);
Como puedes observar esta clase lo que devuelve es un String, a partir de aquí lo único que tienes que hacer es convertirlo a float nuevamente.
Me da la impresión que esta solución no redondea, pero es la mejor que he encontrado.
La otra opción posible es usar la función round(), pero esta función lo único que hace es devolverte la parte entera.
Un saludo
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje
¿No es la respuesta que estabas buscando? Puedes explorar otras preguntas del tema Java o hacer tu propia pregunta: