java (String)强转 和 toString() 的区别,stringtostring
分享于 点击 5656 次 点评:7
java (String)强转 和 toString() 的区别,stringtostring
public static void main(String args[]) {
Map m = new HashMap();
m.put("1", new Integer(1));
String a = m.get("1").toString(); // .toString
String b = (String)m.get("1"); // 强转
}
两者没有可比性
String 是字符串类型
toString()是Object对象的一个方法
Object是所有对象的父类,所以toString()是任何对象都有的描述方法,而强制类型转换成(String)是直接将其当成字符串
toString方法,任何一个对象都可以有自己的字符串表达方式,就要比任何物品都可以有自己的名字一样,你可以重写这个方法,返回你需要的字符串数据
而强制类型转换成String,就是将原本不是String类型的对象转换成String类型,它不会去调用tostring方法。这就相当于你将物品A当成物品B来使用,如果两者不能转换的话,就相当于你把石头当救生圈使用了。。 。。。。
null没有toString()方法,但是null却可以实行强制类型转换成String:(String)null。
因此在不确定所读取的值是否为null的情况下,用强制类型转换的安全性比toString 方法要高。
相关文章
- 暂无相关文章
用户点评