Safe Navigation Operatorが用意されています。
2007/10/16
2007/10/17
groovy
Safe Navigation Operator (?.)
Safe Navigation Operator (?.)
グルービーはSafe Navigation Operatorが用意されていますね。
これってNullPointerExceptionをさけるためのようです。
ところでgroovy本家のサイトみていますと、
Groovy - User Guide
groovy自体が進化していて、自分の実行環境とのバージョンの違いに注意する必要があります。
Groovy - Operators
groovy1.0の環境(eclipseプラグイン)でためしています。
def user = null
def streetName = user?.address
def streetName = user?.address
はOKのようですが、
def user = ""
def streetName = user?.address
def streetName = user?.address
はだめなようです。
そういったものなんでしょうか。
メソッド、プロパティを所有しているオブジェクトがnullでも安全に使えるという趣旨ですね。
: