对double变量保留两位小数如何做?

解决方案 »

  1.   

    没有JDK里找到方法 .不过提供一个另一个方法.doulbe dNum;
    dNum = Math.round( dNum * 100 )/100;
      

  2.   

    DecimalFormat format = new DecimalFormat("######.00");
    format.format(double);
      

  3.   

    zhengjing01(百事可乐) 麻烦问一下,这样做是将所有的double类型都限定为这个格式是吗,
      

  4.   

    如果只是想在显示的时候好看些,可以转成字符串:double d = 3.1451;
    String str = String.format("%.2f", d); // JDK 需要 1.5 以上
    System.out.println(str);如果,要把当前数字保留两位数字的话,可以采用:double d = 3.1451;
    d = Math.round(d * 100) / 100.0;顺便说一下,gccr 的方法得不到预期的效果,应该除以“100.0”而不是“100”。
      

  5.   

    zhengjing01(百事可乐) 麻烦问一下,这样做是将所有的double类型都限定为这个格式是吗================================================================================不可能将所有的 double 都设置成两位小数的,需要手工自行处理。
      

  6.   

    非常感谢各位!gccr(古城痴人) 正如bao110908(讨厌蟑螂) 所说小数点后的数据不能丢失除以100确实不行,
    而zhengjing01(百事可乐) 的方法很适合我的程序,而且这个题目只有一分,所以bao110908(讨厌蟑螂)不好意思只能把分给zhengjing01(百事可乐),非常感谢各位