美文网首页Swift
swift下float转string,如何控制精度

swift下float转string,如何控制精度

作者: 本帅不良 | 来源:发表于2020-07-21 14:11 被阅读0次

上代码

let formatter = NumberFormatter.init()
formatter.maximumFractionDigits = 1
formatter.minimumFractionDigits = 0
let sizeStr = formatter.string(from: NSNumber.init(value: size)) ?? "0"

可以看出,我们使用NumberFormatter来控制精度,分别设置了最大、最小精度。
然后使用formatter.string(from: )方法得到字符串。
效果如下图:

57BC80D66A0B964EF454FB97B721FD85.jpg

注意:"B","K","M"是工程中的单位,此处代码未体现。

可以看出,此方法相对OC的优点在于:能灵活控制精度,而不会像OC一样,无论是否需要,始终精确到固定的小数点位数。

Objective-C实现

NSString *sizeStr = [NSString stringWithFormat:@"%.1f",size];

%.1f表示精确到小数点后一位。

引申

OC中应该也有NumberFormatter类,有兴趣的可以查看苹果官方文档。

相关文章

网友评论

    本文标题:swift下float转string,如何控制精度

    本文链接:https://www.haomeiwen.com/subject/nvsikktx.html