我正在从 Swift 2 转换到 Swift 3。我注意到我无法在 Swift 3 中将 boolean 值转换为整数值。
let p1 = ("a" == "a") //true
print(true) //"true\n"
print(p1) //"true\n"
Int(true) //1
Int(p1) //error
例如,这些语法在 Swift 2 中运行良好。但在 Swift 3 中,print(p1)
会产生错误。
错误是错误:无法使用类型为“((Bool))”的参数列表调用类型“Int”的初始值设定项
我明白为什么会发生错误。谁能解释一下这种安全性的原因是什么以及如何在 Swift 3 中从 Bool 转换为 Int ?
最佳答案
您可以使用三元运算符将 Bool 转换为 Int:
let result = condition ? 1 : 0
如果条件
为真,结果
将为1,如果条件
为假,则为0。
关于swift - 在 Swift 中将 boolean 值转换为整数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40242702/