这是我收到错误的代码:
for (key, value) in info {
let fieldValue: AnyObject? = value
if (!fieldValue || fieldValue?.length == 0) { // this line gives the error
informationComplete = false;
}
}
这是 XCode 建议我使用的内容,这会导致另一个错误:
for (key, value) in info {
let fieldValue: AnyObject? = value
if ((!fieldValue || fieldValue?.length == 0) != nil) { //bool not convertible to string
informationComplete = false;
}
}
感谢帮助。
谢谢你的时间
选项不再被视为布尔表达式(如 Swift 参考中所述 -修订记录):
当可选值有值时,不再隐式评估为 true,而没有值时则隐式评估为 false,以避免在使用可选 Bool 值时出现混淆。相反,使用 == 或 != 运算符对 nil 进行显式检查,以查明可选值是否包含值。
所以你必须明确如下:
if (fieldValue == nil || ...
我记得 beta 6 中发生了变化 - 你使用 beta 5 吗?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)