如何去掉小数点后多余的0

来源:百度知道 编辑:UC知道 时间:2024/05/23 18:58:32
private java.math.BigDecimal A;
public java.math.BigDecimal getA() {
return A;
}
public void setA(java.math.BigDecimal a) {
A = a;
}
如何把返回的A纸后面多余的0去掉,比如1000会显示成1000.0000,1000.25会成1000.2500,要把多余的0去掉 直接在上面改或者写一个转换成String的方法 详细点
不知道如何用getA()返回的值作为参数,调用2楼的removeTailZero方法,而且返回的String getA()要返回一个BigDecimal 类型的

将你getA()返回的值作为参数,调用下面的方法,返回的String就是你想要的结果
public String removeTailZero(BigDecimal b) {
String s = b.toString();
int i, len = s.length();
for (i = 0; i < len; i++)
if (s.charAt(len - 1 - i) != '0')
break;
if (s.charAt(len - i - 1) == '.')
return s.substring(0, len - i - 1);
return s.substring(0, len - i);
}

满 意回答回把整数后面的0也去掉了,可以换下面的方法:
public String removeTailZero(BigDecimal b) {
String s = b.toString();
return s.replaceAll(("(\\d+\\.\\d*[1-9])0+$"), "$1");
}

replace()方法