当前位置: 首页 > 知识库问答 >
问题:

四舍五入到小数点后两位

仲孙钊
2023-03-14

我如何四舍五入电流比率到两个小数位?

let currentRatio = Double (rxCurrentTextField.text!)! / Double (txCurrentTextField.text!)!
railRatioLabelField.text! = "\(currentRatio)"

共有3个答案

盖昀
2023-03-14

更新至SWIFT 4,并正确回答问题

如果你想四舍五入到小数点后两位,你应该用100乘,然后四舍五入,然后除以100

var x = 1.5657676754 
var y = (x*100).rounded()/100
print(y)  // 1.57 
丌官昊天
2023-03-14

(Swift 4.2 Xcode 11)易于使用的扩展:-

extension Double {
    func round(to places: Int) -> Double {
        let divisor = pow(10.0, Double(places))
        return (self * divisor).rounded() / divisor
    }
}

使用:-

if let distanceDb = Double(strDistance) {
   cell.lblDistance.text = "\(distanceDb.round(to:2)) km"
}
何勇
2023-03-14

使用格式字符串四舍五入到小数点后两位,并将转换为String

let currentRatio = Double (rxCurrentTextField.text!)! / Double (txCurrentTextField.text!)!
railRatioLabelField.text! = String(format: "%.2f", currentRatio)

例子:

let myDouble = 3.141
let doubleStr = String(format: "%.2f", myDouble) // "3.14"

如果你想把最后一位小数四舍五入,你可以这样做(谢谢Phoen1xUK):

let myDouble = 3.141
let doubleStr = String(format: "%.2f", ceil(myDouble*100)/100) // "3.15"
 类似资料:
  • 问题内容: 如果值为,则应将其格式化为。如果是,那么应该是。 问题答案: 这是一个实用程序,可以将双精度舍入(而不是截断)双精度至小数位数。 例如: 原始版本;提防这个 这在小数位数很高(例如)或整数部分很大(例如)的极端情况下会严重崩溃。感谢Sloin指出这一点。 多年来,我一直在使用上面的方法将“不太大”的双精度取整到2或3个小数位(例如,以秒为单位的清理时间用于记录目的:27.9876543

  • 获取以下数字集--> 当相加时,这些给出一个整数。

  • 我需要把分钟换算成小时,四舍五入到小数点后两位。我还需要在小数点后显示最多两个数字。所以如果我有650分钟,那么小时应该是10.83。 但在这种情况下,如果我的分钟数是630小时,那就是10.5000000。但我只想要10.50(四舍五入后)。我如何做到这一点?

  • 问题内容: 我有以下JavaScript语法: 这四舍五入为整数。如何返回两位小数的结果? 问题答案: 注-如果3位数精度很重要,请参阅编辑4 toFixed将根据超过2个小数的值为您舍入或舍入。 编辑 -正如其他人所提到的,它将结果转换为字符串。为了避免这种情况: 编辑2- 正如注释中所提到的,此函数在某种程度上会失败,例如在1.005的情况下,它将返回1.00而不是1.01。如果准确性在这个程

  • 我正在尝试用Java对BigDecimal进行四舍五入。下面是我执行的代码 因此,对于我的使用情形,输出为prec1 = 49.32和prec2 = 49.33,我需要始终舍入到49.33,那么除了设置两次比例之外,还有其他舍入到49.33的方法吗?

  • 如果计算结果为164.98001,那么我希望答案显示为164.99。 编辑-我不认为这是一个重复的问题,因为我的问题涉及到四舍五入所有的数字。