- 相關推薦
JAVA認證開源技術:關于Java的對象equals方法
在學習JAVA認證過程中,每個人會遇到每個人不同的問題,或小或大,下面yjbys小編為大家分享的是關于Java的對象equals方法,希望對大家學習JAVA有幫助!
不是所有的equals都是比較整個對象的。
#1.普通Object類:
先看源碼:
public boolean equals(Object obj) {
return (this == obj);
}
看到了沒,用"==",比較的是對象引用,也就是地址。假如兩個對象傳入的參數一樣,但是都用new去創建,地址就不同了,那么用equals返回的就是false.
#2.String類:
先看源碼:
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = count;
if (n == anotherString.count) {
char v1[] = value;
char v2[] = anotherString.value;
int i = offset;
int j = anotherString.offset;
while (n-- != 0) {
if (v1[i++] != v2[j++])
return false;
}
return true;
}
}
return false;
}
比較的是內容,所以只要內容一樣,用new去創建的兩個String對象,調用equals返回true.
#3.Integer類
先看源碼:
public boolean equals(Object obj) {
if (obj instanceof Integer) {
return value == ((Integer)obj)。intValue();
}
return false;
}
一樣是比較內容。
【JAVA認證開源技術:Java的對象equals方法】相關文章:
JAVA認證簡介03-19
SUN JAVA認證介紹12-18
JAVA認證考試細則03-19
java認證考試介紹03-19
sun java認證報考指南03-08
JAVA認證考試費用03-19
java認證考試科目設置03-19
怎樣獲得Sun Java認證03-18
sun java認證考試介紹03-19