Quiero convertir un número a 2 lugares decimales (Mostrar siempre dos lugares decimales) en tiempo de ejecución. Probé un poco de código, pero sólo lo hace, como se muestra a continuaciónConvertir un número a 2 decimales en Java
20.03034 >> 20.03
20.3 >> 20.3 (my code only rounds not converts)
embargo
, yo quiero que haga esto:
20.03034 >> 20.03
20.3 >> 20.30 (convert it to two decimal places)
Mi código de abajo:
angle = a variable
angle_screen = a variable
DecimalFormat df = new DecimalFormat("#.##");
angle = Double.valueOf(df.format(angle));
angle_screen.setText(String.valueOf(angle) + tmp);
Cualquier ayuda sobre cómo hacer esto sería genial, gracias.
Su código es defectuoso de alguna manera. Convierte un doble en una cadena con un formato especial. Luego lo convierte de nuevo en un doble y luego lo convierte de nuevo en una cadena sin especificar ningún formato. Supongo que eso está mal. Además, el propósito de la variable 'tmp' no es obvio. – Robert
Deberías leer la API 'DecimalFormat'; la respuesta está ahí y está bastante clara. – Paul
posible duplicado de [Redondea un doble a 2 cifras significativas después del punto decimal] (http://stackoverflow.com/questions/2808535/round-a-double-to-2-significant-figures-after-decimal-point) –