Int double 总结

1.android中怎样解决double类型数据*运算结果的位数?比如3.2*3应该为9.6,但是他输出的结果为9.6000000000001。这是因为没有给结果加一个范围

   double a = 3.2; 
   double b = 3;
    NumberFormat.getInstance().format(a*b);  系统缺省默认范围

2.double 类型保留位数

   方法一 DecimalFormat df = new DecimalFormat(".00");
                //.00就表示保留后两位数
                System.out.println(f.format(x/y).toString());//调用f.format(x/y)并转换成字符串就行啦

   方法二

   double num1 =10;
   double num2 = 3;
   那么num1/num2=3.3333333333....
   我们怎样才能做到保留到第几位呢?
   在转换为字符串时巧用#和0进行控制
   格式:(num1/num2).toString("#.00") 表示保留两位小数
      (num1/num2).toString("#.000") 表示保留三位小数,但注意如果小数点后面第三位上没有数字,则第三位也显示,但该位置显示值为0,如3.140
      (num1/num2).toString("#.00#") 也表示保留三位小数,但注意如果小数点后面第三位上没有数字,则第三位不显示,只是显示到第二位,如3.14
 
   同时注意:double类型数字3.14
   toString("0#.00") ===》显示值为:03.14
   toString("##.00") ===》显示值为:3.14
    总结:#===》如果#代表的该位置没有数字,则为空
      0===》如果0代表的该位置没有数字,则用0代替该位置上的数字

  方法三

  

  


猜你喜欢

转载自blog.csdn.net/zhixun2012/article/details/10120899