和equals 的總結

2021-08-27 06:29:38 字數 768 閱讀 1887

[size=large]==和equals.的總結

==用於基本型別如int等之中時是比較其指或者字串的大小的,當用於如intager等類的型別時是比較的位址。[/size]

int a=100;

int b=100;

intager c=new intager(100);

intager d=new intager(100);

a==b true

a==c true

c==d false

同樣string s1=」aa」;

string s2=」aa」;

string s3=new string(「aa」);

string s4=new string(「aa」);

s1==s2 true

s1==s3 true

s3==s4 false

[size=large]string 雖然為乙個類,但是s1和s2的賦值」aa」是在碓裡面,s1和s2都到堆裡面去取,所以其位址也相同了,但是new的就不一樣了,其位址肯定不一樣,所以肯定不相等。

equals具有自反性和對稱性,並且可以重寫,因為它屬於object的方法,可以不能判斷它具體是比什麼的。

ps:obj instance of xx

如果obj是xx型別的

因此,物件與物件之間比較用」==」,用於比較是否為同乙個物件,其餘均用equals做比較,並且方法也可以再重寫。

[/size]

equals 和hashCode 使用總結

equals package cn.galc.test public class testequals 沒有重寫equals class cat 先判斷比較物件是否為null 判斷比較物件是否為要比較類的例項 比較倆個成員變數是否完全相等。public class testequals 重寫equa...

Equals 和 的區別

對於值型別,如果物件的值相等,則相等運算子 返回 true,否則返回 false。對於string 以外的引用型別,如果兩個物件引用同乙個物件,則 返回 true。對於 string 型別,比較字串的值。操作比較的是兩個變數的值是否相等。equals 方法比較的是兩個物件的內容是否一致 equals...

equals 和 的區別

equals 方法 是string類從它的超類object中繼承的 被用來檢測兩個物件是否相等,即兩個物件的內容是否相等。用於比較引用 和 比較基本資料型別時具有不同的功能 1.比較基本資料型別,如果兩個值相同,則結果為true 2.而在比較引用時,如果引用指向記憶體中的同一物件,結果為true s...