String.valueOfの罠

String#valueOf(Object obj)って、nullが入ればNullPointerExceptionでも投げてくれるものだと思っていました。

結果: 
String value = String.valueOf(null) 
System.out.println(value) -> 「null」と出力される 
System.out.println(value.length()) -> 「4」と出力される

String.valueOfにnullを入れると、文字列"null"扱いになるとは…

確かにJavaDocに以下のような記述が。 
******************************************************************************** 
public static String valueOf(Object obj) 
  Object 引数の文字列表現を返します。

  パラメータ: 
    obj - Object 
  戻り値: 
    引数が null の場合は、"null" に等しい文字列。そうでない場合は、obj.toString() の値 
********************************************************************************

posted by へっぽ at 19:46 | TrackBack(0) | java | このブログの読者になる | 更新情報をチェックする

この記事へのトラックバック