Java中Object转String有三种方式:
Object reallyAString = "foo";
String str = (String) reallyAString;
Object reallyAString = "foo";
String str = reallyAString.toString();
Object reallyAString = "foo";
String str = String.valueOf(reallyAString);(Sting)object
通过(String)强转时,只有被转换的对象本来就是String时才可以,比如:
Object object="Hello World";
String str=(String)object;
//由于object原来的值就是字符串,所以可以通过(String)转换Object object=23;
(String)object;
//object原来的值不是字符串,而是数字类型,所以报错:
//Cannot cast numeric value to 'java.lang.String'object.toString
通过object.toString()转换时调用的就是object的toString()方法,但是如果object为null时,会抛异常:
Method threw ‘java.lang.NullPointerException’ exception.’
String.valueOf()
String.valueOf中的源码是这样的:
public static String valueOf(Object obj) {
return (obj == null) ? "null" : obj.toString();
}与object.toString()不同的是,如果被转换对象为null时,String.valueOf()不会抛出空指针异常,而是转换为字符串”null”.
如果被转换对象不为null,则直接调用被转换对象的toString().
版权声明:本文为博主原创文章,欢迎转载分享。 https://blog.youkuaiyun.com/CountryWisdom/article/details/46723153

本文介绍了Java中将对象转换为字符串的三种方法:强制类型转换、使用对象的toString()方法及利用String.valueOf()方法。重点讲解了每种方法的特点与应用场景,并特别指出当对象为null时各方法的不同表现。
6661

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



