无法将类型“ Int”的值转换为预期的参数类型“ Double”

Eri*_*ric 0 for-loop swift

我无法弄清楚如何类型的值转换Int到预期的参数类型Doublemph = kph * 0.6214下面的代码:

var mph : Double!
var kph : Float!

print("KPH    MPH")

print("------------")

for kph in 60.stride(to: 130, by: 10) {
    mph = kph * 0.6214
    print("\(kph)     \(mph)")
}
Run Code Online (Sandbox Code Playgroud)

如何编程for以产生所需的结果?

T. *_*sen 5

对于Double / Int东西,您只需要执行Double(Int)*。似乎您也需要使用跨步的更新版本。我相信这是对的:

for kph in stride(from: 60, to: 130, by: 10) {
    mph = Double(kph) * 0.6214
    print("\(kph)     \(mph)")
}
Run Code Online (Sandbox Code Playgroud)

*尽管您似乎不确定kph应该是Float还是Int,并且输出的kph并不是您定义为Float的kph。如果您的计划是在其他地方使用此值,则可能会遇到麻烦。