Android java代码从小数点后的第3位删除重复的零

时间:2018-02-11 18:35:47

标签: java android regex decimal

以下是检查数字是整数还是十进制数的Java代码,并相应地显示结果:

if (result % 1 == 0) {
    String finalResultString = String.format("%.0f", result); 
} else {
    BigDecimal decimalResult = new BigDecimal(result);
    String resultString = String.format("%.15f", decimalResult);
}

但是在小数部分:

1)如果我跑66%6,我得到3.960000000000000,但我希望答案只有3.96。所以我不希望显示不必要的零。

2)如果我运行99 x 65.00055,我希望答案是小数点后的15位数,如6435.054450000000543

所以问题是 - 我不希望零取决于前导数字。如果结果是5.645345600000000或3.960000000000000,我希望结果为5.6453456或3.96。如果结果是6435.054450000000540,我希望显示结果中的14位精度,因为我不希望显示最后一个不必要的零。如果结果是6435.000000000000003,我希望显示所有15位精度,因为最后没有不必要的零

有人可以帮忙吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

您可以将小数点数设置为2:

decimalResult = decimalResult.setScale(2);