如何修复Swift的错误调试说明,使之成双?

时间:2018-08-03 05:45:42

标签: swift double points floating

我刚让我的应用程序最近运行;在测试时,我发现0.1的值多次添加到另一个double值中时,是不正确的。

所以我开始研究和测试双打和(他们)的不准确性。我得出的结果是,debugDescription的double属性返回了除分配值以外的其他值。与此片段相关,以尝试了解我的意思: `让double = 0.1 打印(double.debugDescription)

//结果:0.10000000000000001`

是否有一个不错的解决方案或解决方法,可以使翻倍更准确?

1 个答案:

答案 0 :(得分:0)

您看到的存储的值。当您打印它并得到0.1时,这是因为swift有助于将数字四舍五入,因此看起来更好。调试说明可能会给您确切的存储值。参见例如https://en.wikipedia.org/wiki/Floating-point_arithmetic介绍如何快速存储数字。