欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java中的tostring方法的具體用法

 更新時間:2019年06月05日 11:56:27   作者:anonymity  
這篇文章主要介紹了java中的tostring方法的具體用法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,下面我們來一起學(xué)習(xí)一下吧

我們知道調(diào)用對象的toString()方法會直接輸出對象的屬性信息,但是具體怎么實現(xiàn)的?以及如何更好地實現(xiàn)它呢?現(xiàn)在來學(xué)習(xí)下。

通過java文檔我們能知道,toString()方法在Object類里定義的,其返回值類型為String類型,返回類名和它的引用地址。

在進(jìn)行String類與其他類型的連接操作時,自動調(diào)用toString()方法,demo如下:

Date now = new Date();
System.out.println("now = " + now);//相當(dāng)于下一行代碼
System.out.println("now = " + now.toString());

實際應(yīng)用中,可以根據(jù)需要在用戶自定義類型中重寫toString()方法,如Stirng類重寫了toString()方法,返回字符串的值,dome如下

System.out.println(s1);//相當(dāng)于下一行代碼
System.out.println(s1.toString());

基本數(shù)據(jù)類型轉(zhuǎn)換為String類型是,調(diào)用了對應(yīng)包裝類的toString()方法,demo如下:

int a = 10;
System.out.println("a = " + a);

現(xiàn)在來看下jdk里面的源碼是怎么樣的:

public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}

現(xiàn)在我們來實踐使用它:

Person p1 = new Person();
System.out.println(p1.toString());//TestEquals.Person@15db9742
System.out.println(p1);//TestEquals.Person@15db9742 因為輸出的時候回默認(rèn)調(diào)用Objec類toString()方法

當(dāng)我們打印一個對象的引用時,實際是默認(rèn)調(diào)用這個對象的toString()方法

當(dāng)打印的對象所在類沒有重寫Object中的toString()方法時,默認(rèn)調(diào)用的是Object類中toString()方法。

返回此對象所在的類及對應(yīng)的堆空間對象實體的首地址值。

當(dāng)我們打印對象所 在類重寫了toString(),調(diào)用的就是已經(jīng)重寫了的toString()方法,一般重寫是將類對象的屬性信息返回。

我們也可以自定義一個tostring()方法:

//手動實現(xiàn)
public String toString(){
return " Person:name=" + name +" age=" + age;
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論