以下两个方法都可以将Object转为String,那它们有什么不一样呢??
public String change(Object obj){
String s1=obj.toString();
String s1=(String)obj;
}
很常见的两行代码,
String s1=obj.toString(); //obj是Null时,会报异常!
Exception in thread "main" java.lang.NullPointerException
at org.teasoft.exam.bee.test.StringTest.main(StringTest.java:23)
以下这个不会报异常(用jdk7测试)
Object obj2 =123;
String ss2 = (String) obj;
System.err.println(ss2);
这篇博客探讨了Java中将Object转换为String的两种常见方法:`toString()`和类型强制转换。`obj.toString()`在对象为null时会抛出NullPointerException,而 `(String)obj` 在非null对象且实际类型为String时不会报错。博客提醒开发者注意这两种方法在处理null对象时的行为差异。
706

被折叠的 条评论
为什么被折叠?



