String .toString()  String.valueOf(Object)区别

 

(String)

将object转成String类型的值。

需要注意的是类型必须能转成String类型,(例如Integer类型就不行)否则抛出ClassCastException

备注:null值可以强制转换为任何java类类型,(String)null是合法的

 

.toString()

java.lang.Object类里已有public方法.toString(),而通常派生类会覆盖Object里的toString()方法,所以对任何java对象都可以调用此方法。

必须保证object不是null值,否则将抛出NullPointerException异常。

 

String.valueOf(Object)

弥补了前两者的不足,以.toString()方法为基础。

注意:当转换null时得使用String.valueOf((Object) null),而不是String.valueOf(null)(会报空指针错),

原因,可见:https://blog.csdn.net/a718515028/article/details/85306589