java對象轉(zhuǎn)換String類型的三種方法
作者: 字體:[ 增加 減小] 類型:轉(zhuǎn)載
在很多情況下我們都需要將一個對象轉(zhuǎn)換為String類型,。一般來說有三種方法可以實現(xiàn):Object.toString()、(String)Object,、String.valueOf(Object),。下面對這三種方法一一分析
一、采用Object.toString() toString方法是java.lang.Object對象的一個public方法,。在java中任何對象都會繼承Object對象,,所以一般來說任何對象都可以調(diào)用toString這個方法。這是采用該種方法時,,常派生類會覆蓋Object里的toString()方法,。 但是在使用該方法時要注意,必須保證Object不是null值,,否則將拋出NullPointerException異常,。
二、采用(String)Object 該方法是一個標(biāo)準(zhǔn)的類型轉(zhuǎn)換的方法,,可以將Object轉(zhuǎn)換為String,。但是在使用該方法是要注意的是需要轉(zhuǎn)換的類型必須是能夠轉(zhuǎn)換為String的,否則會出現(xiàn)CalssCastException異常錯誤,。
Object o = new Integer(100); String string = (String)o;
這段程序代碼會出現(xiàn)java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String,。因為將Integer類型強制轉(zhuǎn)換為String類型,無法通過,。
三,、String.valueOf(Object) 上面我們使用Object.toString()方法時需要擔(dān)心null問題。但是使用該方法無需擔(dān)心null值問題,。因為在使用String.valueOf(Object)時,,它會判斷Object是否為空值,如果是,,則返回null,。下面為String.valueOf(Object)的源碼:
public static String valueOf(Object obj) { return (obj == null) ? "null" : obj.toString();
}
從上面我們可以看出兩點:一是不需要擔(dān)心null問題。二是它是以toString()方法為基礎(chǔ)的,。 但是一定要注意:當(dāng)object為null時,,String.valueOf(object)的值是字符串對象:"null",而不是null?。,?!
|