我试图创建一个BMI计算器,它以用户的身高和体重为输入,然后计算他们的BMI;从那里开始,它使用一系列if-else语句返回一条消息给用户,说明他们是否健康/体重超标/体重不足。我可以让程序返回计算出的BMI值;但是当我合并if-else语句时,会出现“Cannot convert return expression of type'String'to return type'Float'”错误。
这是我的代码(到目前为止,我只做了一个if-else语句):
import UIKit
func bodyMassIndex (userHeight : Float, userWeight : Float) -> String {
let userHeightSquared = (userHeight*userHeight)
let userWeight = userWeight
let userBMI = (userWeight/userHeightSquared)
return userBMI
if userBMI > 25 {
return "Overweight"
}
}
print(bodyMassIndex (userHeight : 1.82, userWeight: 90.7))
最佳答案
您只需将Float
的userBMI
值包装成一个String
。
func bodyMassIndex (userHeight : Float, userWeight : Float) -> String {
let userHeightSquared = (userHeight*userHeight)
let userWeight = userWeight
let userBMI = (userWeight/userHeightSquared)
return String(userBMI)
if userBMI > 25 {
return "Overweight"
}
}
关于ios - Xcode“无法将类型为'String'的返回表达式转换为类型为'Float'的返回值”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45361430/