Android:BigDecimal总是显示最多2位小数

时间:2012-12-26 14:39:52

标签: android bigdecimal number-formatting

String TotalAmount= "";

假设我有TotalAmount = 10,或10.110.1110.11111

BigDecimal Amount = new BigDecimal(amount);

我想要Amount

这个模式#.##
10 -> 10.00
10.1 -> 10.10
10.11 -> 10.11
10.11111 -> 10.11

3 个答案:

答案 0 :(得分:2)

您可以尝试java.text.NumberFormat,

NumberFormat nf = NumberFormat.getNumberInstance();
nf.setMaximumFractionDigits(2);
nf.setMinimumFractionDigits(2);
String res = nf.format(Amount);
System.out.println(res);

答案 1 :(得分:1)

自己解决了

BigDecimal TotalAmount= new BigDecimal(myAmount);
BigDecimal Amount = TotalAmount.divide(new BigDecimal(1),2, RoundingMode.HALF_UP);

答案 2 :(得分:0)

您可以使用DecimalFormat(类似于NumberFormat但使用BigDecimal)