[记录]把一个float四舍五入到小数点后2位,4位,或者其它指定位数

 

精确度计算挺常用,也挺麻烦,记录之。

 

 

(一):相对方便,但不直观。

float in = 123.2334f; float out = (float)(Math.round(a*100))/100;(这里的100就是2位小数点,如果要其它位,如4位,这里两个100改成10000); 

 

 

(二):最后还得把结果转化成float
import java.text.DecimalFormat; …… String out = new DecimalFormat("###,###,###.##").format(100.12345 ); 

 

 

(三):感觉这个挺专业;我自己就用这种方法。。

float ft = 134.3435f; int scale = 2;//设置位数 int roundingMode = 4;//表示四舍五入,可以选择其他舍值方式,例如去尾,等等. BigDecimal bd = new BigDecimal((double)ft); bd = bd.setScale(scale,roundingMode); ft = bd.floatValue();  

 

你可能感兴趣的:([记录]把一个float四舍五入到小数点后2位,4位,或者其它指定位数)