我們通常在控制台輸出時使用system.out.print(),print只能直接輸出基本型別和字串,對於其他的型別直接輸出將會輸出@開頭的引用(位址),因此若需要輸出對應的內容則需要使用tosring方法。
tostring方法屬於object,object是所有類的頂級父類,所以所有類都繼承了tostring方法,在實際使用的時候需要重寫tostring方法然後實現內容的直接輸出。
public
class
//重寫tostring方法
@override
public string tostring()
}
基本資料型別比較:==用來判斷兩個變數是否相等,如果是基本型別,則只要值相等,判斷的結果就是true,例如65和『a』比較,結果就是true。
引用資料型別比較:如果是比較的引用型別,那麼只有在兩個變數指向的是同一物件時才是true,例如string a=「111」,string a1=new string(「111」);他們==比較的結果就是false,因為他們是兩個物件。
//基本資料型別比較可以用"=="
int a =
110;
int b =
110;
system.out.
println
(a == b)
;//true
//這種沒有經過new建立的字串,都在常量池中,故s1和s2是指向同乙個地方,位址資料一樣。
string s1 =
"2320"
;string s2 =
"2320"
;system.out.
println
(s1 == s2)
;//true
//這種經過new建立的物件,都會在堆中建立乙個空間,因此位址是不一樣的。經過new建立的位址都不一樣
string s3 =
newstring
("1101");
string s4 =
newstring
("1101");
system.out.
println
(s3 == s4)
;//false
//比較new建立出來的引用型別物件,需要使用equals方法比較才有效
string s5 =
newstring
("1101");
string s6 =
newstring
("1101");
system.out.
println
(s5.
equals
(s6));
//true
重寫equals()方法
//乙個經典的重寫equals的例子:
public
class
bridge
}
總結: equals方法和toString方法
object類中有兩個比較重要的方法 equals 和 tostring 如下 public boolean equals object obj public string tostring string類中重寫了這兩個方法,如下 public boolean equals object anobj...
toString 方法和Integer類
object類是類層次結構的跟類,每個類使用object作為超類,所有物件都實現這個類的方法。tostring 是所有物件的方法,通常,tostring 方法會返回乙個 以文字方式表示 次物件的字串。結果應是乙個簡單但易於讀懂的資訊表示式。建議所有子類重寫次方法。通常需要將乙個物件輸出到控制台上時,...
重寫toString 方法
當需要將乙個物件輸出到顯示器時,通常要呼叫他的tostring 方法,將物件的內容轉換為字串.中的所有類預設都有乙個tostring 方法 預設情況下 system.out.println 物件名 或者system.out.println 物件名.tostring 輸出的是此物件的類名和此物件對應記...