You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift开发:如何去除浮点数小数位?步数卡路里计算需求

快速解决Swift中卡路里数值去除小数位的问题

嘿,针对你要去掉步数消耗卡路里计算结果小数位的需求,这里有几个简单好用的方案,直接修改你那行代码就行:

方案1:直接转换为整数(截断小数)

如果不需要四舍五入,只想直接舍弃小数部分,把Float类型的bmi转成Int就可以了:

self.total2.text = "\(Int(bmi)) kcal"

比如计算结果是156.8,会直接变成156 kcal。

方案2:字符串格式化(自动四舍五入)

如果希望数值按常规四舍五入保留整数(更符合日常卡路里的展示逻辑),用String(format:)方法更合适:

self.total2.text = String(format: "%.0f kcal", bmi)

这里%.0f表示保留0位小数,比如156.6会变成157 kcal,156.3变成156 kcal。

方案3:使用NumberFormatter(灵活格式化)

如果之后有本地化或者更复杂的格式需求,用NumberFormatter会更灵活:

let formatter = NumberFormatter()
formatter.numberStyle = .none // 纯数字格式
formatter.maximumFractionDigits = 0 // 小数位最多0位
if let formattedCalories = formatter.string(from: NSNumber(value: bmi)) {
    self.total2.text = "\(formattedCalories) kcal"
}

这个方法会自动处理四舍五入,还能适配不同地区的数字格式。

另外提个小建议:你的变量名bmi其实不太合适哦,因为BMI是身体质量指数,这里计算的是卡路里,改成calories会让代码可读性更好~

内容的提问来源于stack exchange,提问作者Connor Berry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 11:08:46