Hay una buena pregunta sobre el redondeo de decimales en Java here. Pero me preguntaba ¿cómo puedo incluir los ceros de la izquierda para mostrar los precios en mi programa como: $ 1,50, $ 1,00¿Cómo mostrar correctamente un precio de hasta dos decimales (centavos) incluyendo los ceros finales en Java?
La solución simple de
String.format("%.2g%n", 0.912385);
funciona bien, pero omite el cero de fuga si se encuentra en el último lugar decimal. El problema surge en mi programa a pesar de que sólo se utilizan expresiones como esta:
double price = 1.50;
Cuando hago cálculos con diferentes precios (sumar, multiplicar, etc.) El resultado se muestra principalmente como esto:
$2.5000000000000003
por lo tanto, utilizando el String.Format funciona bien para este propósito, pero se trunca el ejemplo anterior para
$2.5
¿hay una manera apropiada para mostrar el cero de crecimiento en el segundo decimal lugar? O los dos ceros si la salida de un cálculo deben ser
$2.00
Como regla general, nunca use números de coma flotante para representar la moneda. En su lugar, considere usar un número entero para los centavos/peniques. – Pool