*************************************************************
import java.text.NumberFormat;
public class manuFraction {  public manuFraction() {
  }
  public static String manuPageFraction(double dou,int num){
     NumberFormat nf=NumberFormat.getNumberInstance();
     nf.setMaximumFractionDigits(num);
     String resultString="";
     String str="";
     str=String.valueOf(dou);
     if(str==null||str.equals("")){
       return " ";
     }else{
       resultString=nf.format(str);
       return resultString;
     }
  }
}
****************************************
str表示要处理的double数据
num表示保留的小数位的个数

解决方案 »

  1.   

    先转换成string,然后就好办了double里边没有方法四舍五入的
      

  2.   

    顺便问一下,我在调用这个类的时候,是不是每次都要生成一个实例,例如:
    String res=new String();
    manuPageFraction mpf=new manuPageFraction(123.456,2)
    res=mpf.resultString;
    然后,还要将这个字符串res转换成double型的数据
      

  3.   

    import java.text.DecimalFormat;
    DecimalFormat df = new DecimalFormat("0.00");
    double d = 21432.4565;
    System.out.println(d);
    d = df.format(d);
    System.out.println(d);