"=="的作用是比較兩個變數是否相等。
double a =
100.0
;int b =
100;
system.out.
println
(a==b)
;//輸出結果為:
true
string str1 =
; string str2 =
; system.out.
println
(str1==str2)
;//輸出結果為:
true
string str3 =
newstring
("lemo");
string str4 =
newstring
("lemo");
system.out.
println
(str3==str4)
;//輸出結果為:
false
"equals()"既可以用於判斷 number 物件與方法的引數進是否相等,也可以用於字串與指定的物件比較。
integer x =10;
integer y =5;
integer z =10;
short m =10;
system.out.
println
(x.equals
(y))
; system.out.
println
(x.equals
(z))
; system.out.
println
(x.equals
(m))
;//輸出結果為:
false
true
false
string name1=
"tim"
; string name2=
"tim"
; system.out.
println
(name1.
equals
(name2));
test test =
newtest()
; system.out.
println
(name1.
equals
(test));
string name3=
newstring
("tom");
system.out.
println
(name1.
equals
(name3));
//輸出的結果為:
true
false
false
讓我們結合equals的源**來了解一下其中的原理:
public
boolean
equals
(object anobject)
//因為name1和name2的位址一樣,所以返回true
if(anobject instanceof
string
)return
true;}
}return
false
;}
來總結一下, 和equals的區別及重寫
1.共同點 都可以做比較,返回值都是boolean 2.不同點 1,是比較運算符號,既可以比較基本資料型別,也可以比較引用資料型別,基本資料型別比較的是值,引用資料型別比較的是位址值 2,equals方法只能比較引用資料型別,equals方法在沒有重寫之前,比較的是位址值,底層依賴的是 號,但是比較...
equals和 區別及用法
equals public boolean equals object obj 可以看出equals不能用於基本資料型別的比較 因為equals在string date double 和integrer包裝類中進行了重寫 eg 在string中 public boolean equals objec...
Equals 和 的區別
對於值型別,如果物件的值相等,則相等運算子 返回 true,否則返回 false。對於string 以外的引用型別,如果兩個物件引用同乙個物件,則 返回 true。對於 string 型別,比較字串的值。操作比較的是兩個變數的值是否相等。equals 方法比較的是兩個物件的內容是否一致 equals...