我正在开发一个程序,您可以选择最多 3 件您想要分配积分的事情。
举例来说,某项操作可让您获得 4 分,这 4 分将分配到您选择的 3 件事中。
在本例中,这 3 件事各得 1.33333... 分。
在我的数据库中,它们存储为 1.33。
然而当我把它们拿出来时,结果是3.99。
可以理解。
但是,如果不给其中一件事情 1.34 分,我怎样才能避免这种情况呢?
将完整的浮点数/双精度数存储在数据库中,而不是截断到小数点后两位。截断时间是在向用户显示值时——但只截断显示的字符串,而不截断实际值.
浮点值是计算中令人讨厌的醉汉叔叔。就让它们保持原样,然后在出现在公众面前时将其清理掉。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)