懒得搜索,记忆中
float是7位有效数字
double是15位有效数字
整数位保留越多。小数位精度越差。

解决方案 »

  1.   

    判断dbTemp1和dbTemp2比较是否相等
    我一般这样判断
    if(Math.Abs(dbTemp1-dbTemp2)<0.000001)
    {
       //相等
    }
    else
    {
       //不等
    }我允许的误差在10的-6次方以下
      

  2.   

    谢谢楼上各位同学,如果是double与整数,如1或0比较,也需要判断允许的差值,而不直接用==吗?
      

  3.   

    一般两个double如果小数点后面位数不多的话,可以用==直接比较
    但是养成允许一定误差的判断习惯比较好
      

  4.   

    浮点数在代码里一般都不判等的,一定有必要就用Decimal不过我在用的时候,如果有小数,我都是扩大若干被存储和处理的,有0.5的情况就大家都扩大10倍,整数5来表示
      

  5.   

    可以Abs (x-1)<=0.00....来判断
      

  6.   

    这个问题你最好去看看标准文档“IEEE 754 二进制浮点数算术标准”...对浮点数来说,你眼睛看到的值未必是真实的值,==号经常是不适用的...