1、String.valueOf()
传一个确定类型的null值不会报错,例如Long s = null ; String str = String.valueOf(s);// str等于字符串null
直接传null会报空指针异常,例如String.valueOf(null)。
根本原因是这两个例子走了不同的重构方法:
Long s = null ; String str = String.valueOf(s)走
String.valueOf(null)走
2、toString()
如果对象为null会报空指针异常,且子类的toString()方法会覆盖父类的该方法。
3、(String)强转
标准类型转换,转换时需保证两者是可转换的,否则会报类型转换异常。null可以转换成任何类型,(String) null也没毛病。
总结,将其他类型转String时,只要能成功转换,都可以用,注意转换的条件,避免抛异常。