在以下代码中,您是否会使用分配给tempName
的值?换句话说,除了tempName
之外,Optional Binding
是否还有其他用途。
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")
}
由于
答案 0 :(得分:2)
在这个例子中没有,但想象一下你想要用name
完成10个任务并将其传递给多个函数的情况,在这些情况下是的。如果你不使用它,你必须为这些任务和函数中的每一个写一个if if(因为一个可选的导致其他方法返回值也是可选的),这使得你的代码在没有任何理由的情况下更不易读和复杂。
成像10
if name?.somefunction() != nil {
// do something if it is available
}else{
// it's not available. Do something appropriate
}