Scalaでnullチェック
Scalaを書いているとnullを書くことは殆ど無いし書きたくないけど、Javaのライブラリを使おうとするとnullがぽこじゃか顔を出してくる。
nullが入る可能性があるオブジェクトはもちろんnullチェックしなければならない。そんな時はOptionに包んであげることでnullを隠蔽出来てScalaっぽく書けます。
scala> def isNull(v: Any) = Option(v) match { | case Some(x) => println("nullじゃない何か") | case None => println("nullだ!") | } isNull: (v: Any)Unit scala> isNull(null) nullだ! scala> isNull(1) nullじゃない何か
こんな感じでパターンマッチにかけることでnullチェック忘れもコンパイラで検知してくれるし便利ですね。