すぐに始めます:
次の違いは何ですか:
var test: String?
test = "this is an optional string"
if test != nil {
println("\(test!) IS NOT nil")
} else {
println("test is nil")
}
と
if let test = test {
println("\(test) IS NOT nil")
} else {
println("test is nil")
}
どちらもプレイグラウンドで同じ結果を出力します。
暗黙のアンラップが安全とは見なされないことはわかっていますが (ほとんどの場合)、アンラップする前に値が nil かどうかを確認していますか?
両方の方法が有効であり、どちらかがより良い選択と見なされるさまざまなシナリオがありますか?