nullが入るかもしれない値をString型に変換する時はString.valueOfを使用する

String型に変換するメソッドはtoStringとString.valueOfがありますが、toStringは中の値にnullが入ると例外を発生させてしまうため、String.valueOfを用います。

Integer a = null;
String.valueOf(a);   //例外なし
toString(a);         //例外発生

String.valueOfの中身はこのようになっています。

public static String valueOf(Object obj) {
        return (obj == null) ? "null" : obj.toString();
    }

つまり値がnullの場合”null”という文字列を返し、そうでない時はtoStringをするという構造なので、正確にはnullでなく”null”であることに注意が必要です。