gpt4 book ai didi

swift - 处理具有浮点值的整数的最佳实践?

转载 作者:行者123 更新时间:2023-11-30 10:33:52 25 4
gpt4 key购买 nike

我经常必须将 float 与整数一起使用。例如:

var percent:Float = 0.6347
var wholeValue:Int = 10

var result = Int(Float(wholeValue) * percent)

我必须将整数 wholeValue 转换为 Float,应用运算,然后将结果转换回 Int。这确实是笨重和乏味的。有没有更好的方法来操作带有 float 的整数?

最佳答案

解决此问题的一种方法是实现您自己的自定义运算符,这是一个简单的示例,其中我创建了一个运算符 ** ,用于将 Int 和 Double 相乘并返回 Int

infix operator **: MultiplicationPrecedence

extension Int {
static func ** (left: Int, right: Double) -> Int {
Int(Double(left) * right)
}

static func ** (left: Double, right: Int) -> Int {
Int(Double(right) * left)
}
}

示例

let x = 4 + 10 ** 4.5 - 3.4 ** 2 // x = 43

有关详细信息,请参阅 The Swift Programming Language 中的运算符章节。

关于swift - 处理具有浮点值的整数的最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58511798/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com