BigDecimal bd1= new BigDecimal(0.000);
bd1 = bd1.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros();
System.out.println("bd1 value::"+ bd1);
我得到bd1的以下
0.00
,但我希望bd1作为.00
而不是0.00
。我是否正确应用了方法? 最佳答案
您可以将BigDecimal
转换为String
,然后使用正则表达式有条件地删除前导零(如果存在):
BigDecimal bd1 = new BigDecimal(0.000);
bd1 = bd1.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros();
String bdString = bd1.toString().replaceFirst("^0+(?!$)", "")
System.out.println("bd1 value::"+ bdString);