Tengo un número BigDecimal y considero solamente 2 decimales de la misma manera trunco usando:Formato de un BigDecimal como cadena con un máximo de 2 dígitos decimales, la eliminación de 0 en la parte decimal
bd = bd.setScale(2, BigDecimal.ROUND_DOWN)
Ahora quiero imprimirlo como cadena, pero la eliminación de la parte decimal si es 0, por ejemplo:
1.00 -> 1
1.50 -> 1,5
1.99 -> 1.99
Intenté usar un Formatter, formatter.format pero siempre obtengo los 2 dígitos decimales.
¿Cómo puedo hacer esto? Tal vez trabajando en la cadena de bd.toPlainString()?
¿Cuál es el resultado que se espera para este programa. Obtuve los mismos requisitos que los ceros finales después del punto decimal, pero los ceros al final como **. 00 ** truncan en la salida. –
@ParameshKorrakuti 'df.setMinimumFractionDigits (2)' funciona bien sin setScale y setGrouping y setMaxFrac. –
El formato decimal es NumberFormat en disfraz. Use 'NumberFormat numberFormat = NumberFormat.getPercentInstance();' then 'numberFormat.setMinimumFractionDigits (2);' then 'String percent = numberFormat.format (yourBigDecimal);' –