Swift的 - 如果小数点等于0,如何从浮点数去除小数? [英] Swift - How to remove a decimal from a float if the decimal is equal to 0?

查看:1023
本文介绍了Swift的 - 如果小数点等于0,如何从浮点数去除小数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我用小数点显示一个距离,如果等于0(例如:1200.0Km),我想删除这个小数点,我怎么能这么快?
我显示这个数字是这样的:

$ p $ let distanceFloat:Float =(currentUser.distance!as NSString) .floatValue
distanceLabel.text = String(format:%.1f,distanceFloat)+Km


  let distanceFloat:Float =(currentUser .distance!as NSString).floatValue 
distanceLabel.text = String(format:distanceFloat == floor(distanceFloat)?%.0f:%.1f,distanceFloat)+Km


c $ c> extension Float {
var clean:String {
return self%1 == 0?String(format:%.0f,self):String(self)
}
}


I'm displaying a distance with one decimal, and I would like to remove this decimal in case it is equal to 0 (ex: 1200.0Km), how could I do that in swift? I'm displaying this number like this:

let distanceFloat: Float = (currentUser.distance! as NSString).floatValue
distanceLabel.text = String(format: "%.1f", distanceFloat) + "Km"

解决方案

How about this?

let distanceFloat: Float = (currentUser.distance! as NSString).floatValue
distanceLabel.text = String(format: distanceFloat == floor(distanceFloat) ? "%.0f" : "%.1f", distanceFloat) + "Km"

Or as an extension:

extension Float {
    var clean: String {
        return self % 1 == 0 ? String(format: "%.0f", self) : String(self)
    }
}

这篇关于Swift的 - 如果小数点等于0,如何从浮点数去除小数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆