「何もない」を表す特別な値「null」とは?
Javaでは、オブジェクト型の変数に「まだどのオブジェクトも参照していない」という状態を表すのに null
を使います。
つまり、「何もない」「未設定」の状態を意味します。
nullの基本
String name = null;
Person p = null;
上記のように、参照型(クラス型)の変数には null
を代入できます。
これは「まだオブジェクトを生成していない」または「参照先が存在しない」状態です。
nullのよくある使い方
- 初期状態として
null
を代入しておく
- オブジェクトが生成されたかを
null
かどうかで判断する
- 検索結果が存在しないときに
null
を返す
例:nullチェック
if (p != null) {
System.out.println(p.getName());
} else {
System.out.println("データが存在しません");
}
nullを使うときの注意点
nullのままメソッドやフィールドにアクセスすると、エラーになります!
Javaではこのような操作を行うと NullPointerException(ヌルポ)という例外が発生します。
例:エラーになるケース
String s = null;
System.out.println(s.length()); // NullPointerException発生!
nullと初期値の違い
型 |
初期値 |
int, doubleなど(プリミティブ型) |
0, 0.0 など |
boolean |
false |
参照型(String、クラスなど) |
null |
まとめ
null は、Javaにおいて「まだ何も代入されていない参照」を表す特別な値です。
メモリ上にオブジェクトが存在しない状態であるため、メソッド呼び出しなどはできません。
nullチェックを行うことで、エラーを防ぎながら安全にプログラムを作成しましょう!