比如 double number = 3.1415926  
这个说,我想保留4位有效数字,用java怎样实现?求解 谢谢

解决方案 »

  1.   

    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位.
      

  2.   

    比较常用的就是1楼所说的第二种方法,使用DecimalFormat 类
      

  3.   

    还有一种有意思的方法
    double n=((double)(int)(number*10000))/10000;
      

  4.   

    /*import java.lang.Object; //保留四位有效数字          java.lang.Object是默认引进的包public class A6 {
    public static void main(String[]args)
    {double x=3.1415926,y ;
     System.out.println(x) ;
     y=(double)(Math.round(x*10000)/10000.0) ;
     System.out.println(y);
    }}*/import java.text.DecimalFormat; 
    public class A6
    {  public static void main(String[]args)
     {
    double x=3.1415926 ;
       DecimalFormat df2 = new DecimalFormat("##.00");  
       DecimalFormat df3 = new DecimalFormat("###.000");  
       System.out.println(df2.format(x)) ;  
       System.out.println(df3.format(x)) ;  
     }}