相关疑难解决方法(0)

Swift中的精确字符串格式说明符

下面是我之前将浮点数截断为两位小数的方法

NSLog(@" %.02f %.02f %.02f", r, g, b);
Run Code Online (Sandbox Code Playgroud)

我检查了文档和电子书,但还没弄清楚.谢谢!

swift

372
推荐指数
14
解决办法
30万
查看次数

在Swift中获取double的小数部分

我试图在swift中分隔double的十进制和整数部分.我尝试了很多方法,但它们都遇到了同样的问题......

let x:Double = 1234.5678
let n1:Double = x % 1.0           // n1 = 0.567800000000034
let n2:Double = x - 1234.0        // same result
let n3:Double = modf(x, &integer) // same result
Run Code Online (Sandbox Code Playgroud)

有没有办法获得0.5678而不是0.567800000000034而无需将数字转换为字符串?

math floating-accuracy swift

14
推荐指数
6
解决办法
2万
查看次数

Swift 将双精度 0.1 编码为 JSON 为 0.10000000000000001

使用 0.1 值初始化双变量并通过 SwiftyJSON 将其编码为 JSON 后,我收到 JSON 结构中的 0.10000000000000001 。

我知道浮点/双精度和整数之间的精度内存存储差异,但除了使用 %.2f 等 sprintf 格式之外,我仍然没有找到针对这种情况的快速修复方法 - 我不想将字符串放入 json结构。

任何快速简单的解决方案都将受到赞赏。

我期望 JSON 中有 0.1 的值。如果 double 值为 10,我期望 JSON 中的值为 10。但是在 json 编码操作过程中如何避免这种精度舍入错误呢?

precision json type-conversion swift swifty-json

5
推荐指数
1
解决办法
2832
查看次数