float都保存的是2进制近似值,所以不存在保留十进制几位小数的情况。

所谓保留几位小数,都是用于十进制显示时的显示格式。

方法1:

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

方法2:

String.format("%.2f", 0.12345f));