JavaでString.valueOfにnullを渡すと”null”という文字列が戻る

JavaでString.valueOfにnullを渡すと”null”という文字列が戻る

JavaでString.valueOfにnullが入ったオブジェクトを渡すと”null”という文字列が戻ります。

String.valueOfのメソッド内は以下のようになっています。

objがnullなら”null”を返すという意味不明なことになっていますね。

ようするにnullも文字列で”null”にしてしまいますので注意が必要です。

String.valueOfを使用する時はnullを考慮する必要があります。

Java7からObjects.toString()で解決する

このメソッドの戻り値はString型で、第一引数は何でもよいです。nullの場合は、第二引数が返ってきます。nullでない場合は第一引数をString型にして返します。

このメソッドを使用することにより”null”という文字列を返さないようにすることができます。

String.valueOfの代わりとして使えます。toString()メソッドはヌルポで落ちる可能性がありますし、valueOfは”null”になるので、Objects.toString()がお勧めです。

ちなみにですが以下のように直接nullを引数に渡すとヌルポが発生しますのでご注意ください。

スポンサーリンク
  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA