double d=12.2162;
java.text.DecimalFormat df2=new java.text.DecimalFormat("###,##0.00");
String g = df2.format(d);
System.out.println(g);输出为 12.22它会实现四舍五入

解决方案 »

  1.   

    应该这样:public class TestDouble
    {
        public static void main(String[] args)
        {        double d=111111111134342.2162;
            java.text.DecimalFormat df2=new java.text.DecimalFormat("0.00");
            String g = df2.format(d);
            System.out.println(g);    }}
      

  2.   

    谢谢,
    但是我输出的也需要是double型的,有吗?
      

  3.   

    public static double round(double d,int i){
    d= Math.round(d*Math.pow(10,(double)i))/Math.pow(10,(double)i);
    return d;
    }
    i是留的位数;