在Swift中获取double的小数部分

在Swift中获取double的小数部分,第1张

概述我试图在swift中分隔double的十进制和整数部分.我尝试了很多方法,但它们都遇到了同样的问题…… let x:Double = 1234.5678let n1:Double = x % 1.0 // n1 = 0.567800000000034let n2:Double = x - 1234.0 // same resultlet n3:Double 我试图在swift中分隔double的十进制和整数部分.我尝试了很多方法,但它们都遇到了同样的问题……
let x:Double = 1234.5678let n1:Double = x % 1.0           // n1 = 0.567800000000034let n2:Double = x - 1234.0        // same resultlet n3:Double = modf(x,&integer) // same result

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

如果不将其转换为字符串,您可以向上舍入到如下所示的多个小数位:
let x:Double = 1234.5678let numberOfPlaces:Double = 4.0let powerOfTen:Double = pow(10.0,numberOfPlaces)let targetedDecimalPlaces:Double = round((x % 1.0) * powerOfTen) / powerOfTen

你的输出会是

0.5678

总结

以上是内存溢出为你收集整理的在Swift中获取double的小数部分全部内容,希望文章能够帮你解决在Swift中获取double的小数部分所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:http://outofmemory.cn/web/1047983.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-25
下一篇2022-05-25

发表评论

登录后才能评论

评论列表(0条)

    保存