一、采用Object.toString()
toString方法是java.lang.Object對(duì)象的一個(gè)public方法。在java中任何對(duì)象都會(huì)繼承Object對(duì)象,所以一般來說任何對(duì)象都可以調(diào)用toString這個(gè)方法。這是采用該種方法時(shí),常派生類會(huì)覆蓋Object里的toString()方法。
但是在使用該方法時(shí)要注意,必須保證Object不是null值,否則將拋出NullPointerException異常。
二、采用(String)Object
該方法是一個(gè)標(biāo)準(zhǔn)的類型轉(zhuǎn)換的方法,可以將Object轉(zhuǎn)換為String。但是在使用該方法是要注意的是需要轉(zhuǎn)換的類型必須是能夠轉(zhuǎn)換為String的,否則會(huì)出現(xiàn)CalssCastException異常錯(cuò)誤。
這段程序代碼會(huì)出現(xiàn)java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String。因?yàn)閷nteger類型強(qiáng)制轉(zhuǎn)換為String類型,無法通過。
三、String.valueOf(Object)
上面我們使用Object.toString()方法時(shí)需要擔(dān)心null問題。但是使用該方法無需擔(dān)心null值問題。因?yàn)樵谑褂肧tring.valueOf(Object)時(shí),它會(huì)判斷Object是否為空值,如果是,則返回null。下面為String.valueOf(Object)的源碼:
}
從上面我們可以看出兩點(diǎn):一是不需要擔(dān)心null問題。二是它是以toString()方法為基礎(chǔ)的。
但是一定要注意:當(dāng)object為null時(shí),String.valueOf(object)的值是字符串對(duì)象:"null",而不是null!!!
新聞熱點(diǎn)
疑難解答
圖片精選