如何将BigDecimal进行格式化

/**
* BigDecimal保留小数位
* @param num 需格式化数字
* @param place 小数位
* @return
*/
public static String bigDecimalFormatOrZero(BigDecimal num , Integer place){
try {
//place为-1时,解决页面除以1w四舍五入取整问题,传取到后台进行除以1w
if(place==-1){
place=4;
if(num!=null){
num=num.divide(new BigDecimal(10000));
}
}
place = place==null||place<0?0:place;
num = num == null?new BigDecimal(0):num;
NumberFormat formatter = NumberFormat.getNumberInstance();
formatter.setMaximumFractionDigits(place);
String result = formatter.format(num);
if (“0.00”.equals(result) || “-0.00”.equals(result)) {
result = “0”;
}
if(!“0”.equals(result)&&result.indexOf(".")<0&&place>0){
result = result + “.”;
for(int i=0;i result = result + “0”;
}
}
if(!“0”.equals(result)&&result.indexOf(".")>=0&&place>0){
String str[] = result.split("\.");
for(int i=0;i result = result + “0”;
}
}
if(“0”.equals(result)){
return “”;
}else{
return result;
}
} catch (Exception e) {
e.printStackTrace();
return “”;
}
}

你可能感兴趣的:(如何将BigDecimal进行格式化)