-1
在以下代码中,您是否曾使用分配给tempName
的值?换句话说,tempName
除Optional Binding
之外是否还有其他用途。您是否曾经使用if let语句中指定的值
var name:String?
name = "Nathan"
if let tempName = name{
print("It's not nil, it has a value")
print(tempName) // Nathan - Would you ever use this value
print(name!) // Nathan
}else{
print("It's nil, no value has been set")
}
感谢
如果你只是想检查值是否是'nil',那么可选的结合是没有意义的,因为你不需要绑定* *做。你可以使用普通的'name!= nil'或'if let _ = name {'。对刚刚绑定的变量使用'!'看起来像一个错误,因为可选绑定应该避免'!'。 – Sulthan
*可选绑定*的全部要点是安全地创建一个展开的变量,然后您可以自由使用而不必担心再次展开!正如@Sulthan所说,如果你只是检查它是否为'nil',那么检查'nil'或者将它分配给'_'。所以是的,绝对的,在* optional binding *之后有一个用于变量的用法。 – vacawama
我想我的问题是不明白'可选绑定'是什么,我认为主要用于'如果让'它是为了检查'nil'这肯定不是这样,我的坏。谢谢@Sulthan和@ vacawama - 指出这一点,现在有道理。 –