[软件设计/软件工程] 在 Swift 中获取 double 的小数部分

[复制链接]
发表于 2022-5-4 13:28:04
问题
我试图在 swift 中分离 double 的小数和整数部分。我尝试了很多方法,但都有同样的问题。 . .
  1. let x:Double = 1234.5678
  2. let n1:Double = x % 1.0           // n1 = 0.567800000000034
  3. let n2:Double = x - 1234.0        // same result
  4. let n3:Double = modf(x, &integer) // same result
复制代码

有没有办法在不转换为字符串的情况下获得 0.5678 而不是 0.5678000000034?

回答
您可以将其四舍五入到多个小数位,而不是将其转换为字符串,如下所示:
  1. let x:Double = 1234.5678
  2. let numberOfPlaces:Double = 4.0
  3. let powerOfTen:Double = pow(10.0, numberOfPlaces)
  4. let targetedDecimalPlaces:Double = round((x % 1.0) * powerOfTen) / powerOfTen
复制代码






上一篇:无法为返回引用的闭包推断正确的生命周期
下一篇:使用 Javascript 的 JSON 到 XML

使用道具 举报

Archiver|手机版|小黑屋|吾爱开源 |网站地图

Copyright 2011 - 2012 Lnqq.NET.All Rights Reserved( ICP备案粤ICP备14042591号-1粤ICP14042591号 )

关于本站 - 版权申明 - 侵删联系 - Ln Studio! - 广告联系

本站资源来自互联网,仅供用户测试使用,相关版权归原作者所有

快速回复 返回顶部 返回列表