たまにunwrapするけど,必要なのはその有無でそのままそれを棄てることがあります. こういうときです.
if let a = some { print("some is .Some") }
このままだとXcodeに,a
を使ってないから_
に変えろって怒られたりしてゲンナリ………オシャレ感ゼロです.
そんなとき,パターンマッチを使うとちょっと小洒落たかんじになります.
if case .Some = some { print("some is .Some") }
同様に,nil
かどうかを確かめたいときもsome == nil
よりパターンマッチを使うほうが小洒落てます.
if case .None = some { print("some is .None") }
最近Swiftを始めた同僚がif case
なんてあるんですねって言ってたときに,「あんま使わねーな」とおもってたんですけど,それから意識してみると小洒落たコードが書けました.
追記
次の日また別の同僚と話していたら,「SwiftってOptional
の存在を極力隠しているからnil
との比較のほうがよくない?」って言われました.
たしかに,Optional
の正体を知っていると別になんともないコードなんですが,そうでないと読み解くのが難しいかもしれません.
別段パターンマッチが必要な場面ではありませんしnil
との比較のほうが凡庸なので,普段はそっちを使ったほうがいいなとおもいました.
オシャクソ野郎は使え.
こちらからは以上です.