java對(duì)象轉(zhuǎn)換String類型的三種方法
一、采用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ò)誤。
Object o = new Integer(100);
String string = (String)o;
這段程序代碼會(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)的源碼:
public static String valueOf(Object obj) {
return (obj == null) ? "null" : obj.toString();
}
從上面我們可以看出兩點(diǎn):一是不需要擔(dān)心null問題。二是它是以toString()方法為基礎(chǔ)的。
但是一定要注意:當(dāng)object為null時(shí),String.valueOf(object)的值是字符串對(duì)象:"null",而不是null?。。?/P>
- JAVA中字符串函數(shù)subString的用法小結(jié)
- Java中char數(shù)組(字符數(shù)組)與字符串String類型的轉(zhuǎn)換方法
- Java String字符串和Unicode字符相互轉(zhuǎn)換代碼
- JSON的String字符串與Java的List列表對(duì)象的相互轉(zhuǎn)換
- Java List轉(zhuǎn)換成String數(shù)組幾種實(shí)現(xiàn)方式詳解
- 詳解Java String字符串獲取每一個(gè)字符及常用方法
- Java String.format()的用法
- Java如何將String轉(zhuǎn)換成json對(duì)象或json數(shù)組
- java判斷字符串String是否為空問題淺析
- Java實(shí)用技巧:如何使用String去除開頭的第一個(gè)字符?
相關(guān)文章
spring-boot通過@Scheduled配置定時(shí)任務(wù)及定時(shí)任務(wù)@Scheduled注解的方法
這篇文章主要介紹了spring-boot通過@Scheduled配置定時(shí)任務(wù),文中還給大家介紹了springboot 定時(shí)任務(wù)@Scheduled注解的方法,需要的朋友可以參考下2017-11-11json如何解析混合數(shù)組對(duì)象到實(shí)體類的list集合里去
這篇文章主要介紹了json解析混合數(shù)組對(duì)象到實(shí)體類的list集合里去的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06SpringBoot中自定義注解實(shí)現(xiàn)控制器訪問次數(shù)限制實(shí)例
本篇文章主要介紹了SpringBoot中自定義注解實(shí)現(xiàn)控制器訪問次數(shù)限制實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-04-04ScheduledExecutorService任務(wù)定時(shí)代碼示例
這篇文章主要介紹了ScheduledExecutorService任務(wù)定時(shí)代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01WxJava微信公眾號(hào)開發(fā)入門實(shí)戰(zhàn)
本文主要介紹了WxJava微信公眾號(hào)開發(fā)入門實(shí)戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06