小编典典

String.valueOf() 与 Object.toString()

all

String.valueOf(Object)在Java中,和之间有什么区别Object.toString()吗?这些是否有特定的代码约定?


阅读 151

收藏
2022-08-21

共1个答案

小编典典

根据Java
文档
String.valueOf()返回:

如果参数是null,则字符串等于"null"; 否则,obj.toString()返回 的值。

所以除了额外的方法调用之外应该没有什么区别。

此外,在 的情况下Object#toString,如果实例是nullNullPointerException则将抛出 a ,因此可以说,它不太
安全

public static void main(String args[]) {  
    String str = null;
    System.out.println(String.valueOf(str));  // This will print a String equal to "null"        
    System.out.println(str.toString()); // This will throw a NullPointerException
}
2022-08-21