truncar studio round redondear numeros limitar float decimales con android format double show settext

android - studio - redondear float java



¿Cómo imprimir un doble con dos decimales en Android? (6)

Antes de usar DecimalFormat, necesita usar la siguiente importación o su código no funcionará:

import java.text.DecimalFormat;

El código para formatear es:

DecimalFormat precision = new DecimalFormat("0.00"); // dblVariable is a number variable and not a String in this case txtTextField.setText(precision.format(dblVariable));

Esta pregunta ya tiene una respuesta aquí:

Quizás esta es una pregunta tonta, pero no puedo adivinar cómo resolverla si no está creando un método. Tal vez hay una "manera natural" de hacerlo, como en C, por ejemplo. Aquí está el problema:

Tengo una var:

double a;

Y quiero mostrarlo solo con 2 o 3 decimales. Cuando trato de mostrarlo:

Text.setText("Value of a: " + String.valueOf(a));

Da algo como:

Valor de a: 5.234966145

Y quisiera solo

Valor de a: 5.23

Sin cambiar el valor real de a, muestra el número aproximado pero funciona con el número real.


Para mostrar dígitos hasta dos lugares decimales hay dos posibilidades: 1) En primer lugar, solo desea mostrar dígitos decimales si está allí. Por ejemplo: i) 12.10 se mostrará como 12.1, ii) 12.00 para que se muestre como 12. Luego use-

DecimalFormat formater = new DecimalFormat("#.##");

2) En segundo lugar, desea visualizar los dígitos decimales independientemente del decimal presente. Por ejemplo -i) 12.10 para visualizarse como 12.10. ii) 12 para que se muestre como 12.00. Luego use-

DecimalFormat formater = new DecimalFormat("#.00");



usa este:

DecimalFormat form = new DecimalFormat("0.00"); etToll.setText(form.format(tvTotalAmount) );

Nota: Los datos deben estar en formato decimal (tvTotalAmount)


textView2.setText(String.format("%.2f", result));

y

DecimalFormat form = new DecimalFormat("0.00"); textView2.setText(form.format(result) );

... causa el error "NumberFormatException" en la configuración regional para Europa porque establece el resultado como una coma en lugar de un punto decimal: el error ocurre cuando se agrega textView al número en editText. Ambas soluciones funcionan de manera excelente en EE. UU. Y el Reino Unido.


yourTextView.setText(String.format("Value of a: %.2f", a));