fatal error: unexpectedly found nil while unwrapping an Optional value
nil値が戻ってくる可能性のある時の処理方法。
tableCellに値を渡す時を例に、
# if let xx = yy { } else { }
if let lock = event.isLocked as? Bool {
cell.isLocked = lock
} else {
cell.isLocked = false
}
で新しく、guard let
なんてのが出てきて、こんな風に書き換える事ができ、(else
以降の役割がよくわからない。)
# guard let xx = y else {]
guard let lock = event.isLocked as? Bool else { return }
cell.isLocked = lock
そしてしかも、簡略した(?:ニル、?:なの)xx = yy ??
もある。
# xx = yy ??
cell.isLocked = event.isLocked as? Bool ?? false
基本的に同じものなのだろうか?一番下のものがなんとなく分かりやすい気も個人的にはするのだが、あまり推奨はされていないようにも思われる。。。場合によって使い分けるのが良いのか。。