java中取小数点后2位数字

阅读更多
有四种方法:
  一.double  d = 13.24535;
      d = ((int)(d*100))/100;
  二. class  Test1{ 
      public  static  void  main(String[]  args){ 
          double  d  =  convert(3.141592); 
          System.out.println(d); 
      } 
       
      static  double  convert(double  value){ 
          long  lg  =  Math.round(value*100); //四舍五入 
          double  d=  lg/100.0; //注意:使用 100.0而不是  100 
          return  d; 
      } 
  }
  三.java.math.BigDecimal 
      BigDecimal  bd  =  new  BigDecimal("3.14159265"); 
      bd  =  bd.setScale(2,BigDecimal.ROUND_HALF_UP); 

  四. java.text.DecimalFormat  df=new java.text.DecimalFormat("#.##"); 
      double  d=3.14159; 
      System.out.println(df.format(d));
  double型数据,想在小数点后保留两位,该怎么写? 
现知道有d=int(d*100+5) d=d/100,有没有哪个属性可以直接设?

(1)d.TOSTRING(".##") 

(2)round(double,int )四舍五入的函数 

(3)d.ToString("F2")

d.ToString("f2");//结果取小数点后两位,且四舍五入
(d-0.005).ToString("f2");//直至保留小数点前两位,不四舍五入

(4)string.Format("{0:f2}",要显示的数据);

你可能感兴趣的:(java,string,double)