/**
* 保留指定小数位的简单方法,并设置是否四舍五入
* 如果小数位为0则不显示 : 1.00->1
* @param number 要转换的数值
* @param decimalPlaces 保留的小数位,---->样例(保留几位小数就几个#号):0.##
* @param isConvert 否转换为四射五入,true:四舍五入
* @return 指定小数位,如果小数位为0则不显示
*/
public static String format(double number,String decimalPlaces,boolean isConvert) {
DecimalFormat decimalFormat = new DecimalFormat(decimalPlaces);
//四舍五入
if (isConvert){
decimalFormat.setRoundingMode(RoundingMode.HALF_UP);
}else {
decimalFormat.setRoundingMode(RoundingMode.FLOOR);
}
return decimalFormat.format(number);
}
例如两位小数且省略最后为0:format(1.00,"0.##",true)
输入:1.00
输出:1
输入:1.10
输出:1.1
输入:1.777
输出:1.78
2.对最后的0没有要求,例如:1.00
也可以使用:new BigDecimal(1.000).setScale(2,BigDecimal.ROUND_HALF_UP)
输出:1.00