Necesito formatear el número.
Necesito el siguiente resultado:
3434 -> 3 434 3434.34 -> 3 434.34 3434.3 -> 3 434.30Aquí está mi código:
val formatter = DecimalFormat("#,###,##0.##") return formatter.format(value)Pero obtengo un resultado como este:
3434 -> 3 434 3434.34 -> 3 434.34 3434.3 -> 3 434.3 // wrong!! expected 3 434.30Necesito agregar cero al final si hay un dígito después del punto decimal.
Por favor, ayúdenme, ¿cómo puedo solucionar el problema?
import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; import java.util.*; public class AddZeroToOneDigitDecimal{ public static void main(String []args){ System.out.println(customFormat(3434)); System.out.println("----------"); System.out.println(customFormat(3434.34)); System.out.println("----------"); System.out.println(customFormat(3434.3)); } public static String customFormat(double d){ String result = formatter.format(d); return (result.replace(".00","")); } private static DecimalFormat formatter; private static final String DECIMAL_FORMAT = "#,###,##0.00"; private static DecimalFormatSymbols formatSymbols = new DecimalFormatSymbols(Locale.ENGLISH); static { formatSymbols.setDecimalSeparator('.'); formatSymbols.setGroupingSeparator(' '); formatter = new DecimalFormat(DECIMAL_FORMAT, formatSymbols); } } val formatter = DecimalFormat("#,###,##0.00"); return formatter.format(value).replace(".00","");Eliminar los dos últimos # después de . y agregue 00 en lugar de ## .
val dec = DecimalFormat("#,###,##0.00")