Java 之String.valueOf(obj)
实例代码如下:
String str = null; String uSelectDate = String.valueOf(str); System.out.println("==================uSelectDate:"+uSelectDate); if(uSelectDate==null){ System.out.println("==================uSelectDate is null"); }else{ System.out.println("==================uSelectDate is not null"); System.out.println("==================uSelectDate length:"+uSelectDate.length()); }
运行结果如下:
可以看出对于值为null的使用String.valueOf()会将其转换为"null"字符串,如果直接使用String.valueOf(null)是会报空指针异常的。
对于String.valueOf()其底层也是使用toString()实现的:首先判断obj是否为空,如果为空就返回"null"串,否则就调用toString()返回对应的字符串。
public static String valueOf(Object obj) { return (obj == null) ? "null" : obj.toString(); }
而直接使用String.valueOf(null)为什么会报空指针异常参看:http://javacat360.iteye.com/blog/2024378