例如:123456789.4500 是BigDecimal类型123456789.0000  是BigDecimal类型想得到结果:123456789.45  和 123456789java如何来写??

解决方案 »

  1.   


    double ex=123456789.0000;
    BigDecimal bd = new BigDecimal(ex);
    DecimalFormat df = new DecimalFormat("##########.##################");        
    System.out.print(df.format(bd));
      

  2.   

    value.toString().replaceAll("\\\\.?0+$","");
      

  3.   

    setScale方法,api里有
    不知道还有其他方法么?
      

  4.   

    引用一下这位网友的方法:
    1.(double) (Math.round(sd3*10000)/10000.0);  这样为保持4位  (double) (Math.round(sd3*100)/100.0);  这样为保持2位.  2.另一种办法  import java.text.DecimalFormat;  
    DecimalFormat df2 = new DecimalFormat("###.00");  DecimalFormat df2 = new DecimalFormat("###.000");  System.out.println(df2.format(doube_var));  第一个为2位,第二个为3位.
      

  5.   

    试试:
    nf.formate(test);
    double test=123456789.4500 ;
    NumberFormate nf=NumberFormate.getInstance();