您是否会使用if let语句中指定的值

时间:2017-04-20 13:10:47

标签: swift

在以下代码中,您是否会使用分配给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")
}

由于

1 个答案:

答案 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
}