点击关注 异步图书,置顶公众号
每天与你分享 IT好书 技术干货 职场知识
之前一家公司的项目做的是电商平台app,名字叫做e点办公,下面来说说开发中遇到的坑。
app有这样一个功能,用户使用app购买商品可以选择分期付款,具体分几期,每期还多少钱,什么时间还钱都由用户自己去设置,是不是很人性化。申请分期后,会显示正在审核中。其中,要计算每一起还款金额加起来必须等于商品金额,否则就提示错误。
不知道大家有没有明白这个功能,按照要求我把每一期的还款金额加起来,不等于商品金额就提示错误,相等就显示正在审核中。
功能完成后,测试人员测试的时候出现了问题,商品价格假设0.3元,分两期还,第一期还0.1元,第二期还0.2元。提交的时候提示错误,不可能啊,我就检查自己的代码,逻辑上没有错。难道0.1+0.2不等于0.3。
这个问题困扰了我一下午,测试在一旁幸灾乐祸,让我快点解决这个bug。我把结果打印出来,发现确实不相等。我当时是这样改的,如果误差小于0.000001,就认为它们是相等的。现在想想,当时的自己实在太机智了。
通过这次经验我知道了,开发中遇到浮点数运算时要格外小心,不要被一些小问题困扰自己。你们在开发中是否也遇到过同样的问题呢?
本文来源于,异步社区,作者:兄弟 名称《iOS开发中遇到的那些坑》
推荐阅读
长按二维码,可以关注我们哟
每天与你分享IT好文。
在“异步图书”后台回复“关注”,即可免费获得2000门在线视频课程;推荐朋友关注根据提示获取赠书链接,免费得异步e读版图书一本。赶紧来参加哦!