写代码时你有没有遇到过这种情况:两个看起来明明一样的小数,用 == 一比对,结果却是 false?比如 0.1 + 0.2 不等于 0.3。这可不是程序出 bug,而是浮点数的“老毛病”。
下面是标题中包含该 TAG 关键词的相关文章列表,采用字母图标与卡片式布局展示。
写代码时你有没有遇到过这种情况:两个看起来明明一样的小数,用 == 一比对,结果却是 false?比如 0.1 + 0.2 不等于 0.3。这可不是程序出 bug,而是浮点数的“老毛病”。
做财务系统、写交易程序的时候,经常有人问:能不能用浮点数算钱?比如用 float 或 double 类型存余额、算利息。答案很直接——别用。 浮点数不是“精确”的