Java

Javaでnullとの比較をする場合に使える構文と例外の発生条件

equalsメソッドにnull値が入った場合の挙動

※以下a,bは変数とする

a.equals(b)

aがnullの場合、例外(NullPointException)が発生する。
bがnullの場合、例外は発生せず、falseが戻り値として返る。

Object.equals(a,b)

a,bのいずれかがnullの場合例外は発生せず、falseが戻り値として返る。
a,bのいずれもnullの場合はteueが戻り値として返る。

ポイント

nullとの比較をしたい場合は等価演算子(==)を用いる。

空文字("")を比較した場合の挙動

• equals(b)
• Object.equals(a,b)
a,bのいずれが空文字でも比較でき、例外は発生しない。

equalsメソッドのオーバーロード

同じ型のインスタンスオブジェクトを、フィールドの特定の値で比較できる。

参考サイト

Java equalsメソッドで比較する値がnullまたは空文字だった場合のサンプル