java 如何使的float保留2位或者多位小数

转载自 http://blog.csdn.net/com_stu_zhang/article/details/7214565

方法1:  


  float   f   =  34.232323;  
  BigDecimal   b  =   new  BigDecimal(f);  
  float   f1   =  b.setScale(2,  BigDecimal.ROUND_HALF_UP).floatValue();  
  //   b.setScale(2,  BigDecimal.ROUND_HALF_UP)  表明四舍五入,保留两位小数  

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

方法2:  

 

import  java.text.DecimalFormat;       
String   a   =  new  DecimalFormat("###,###,###.##").format(100.12345  );


[java]  view plain copy
  1. float   scale  =   34.236323;   
  2. DecimalFormat   fnum  =   new  DecimalFormat("##0.00");    
  3. String   dd=fnum.format(scale);       
  4. ystem.out.println(dd);  

方法3:最简单的方法

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


你可能感兴趣的:(java,UP,import,float)