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方法】相關文章:
1.JAVA認證輔導考點:JSP的隱含對象
2.sun認證考試:java子對象創建過程
3.JAVA認證簡介
4.關于java面向對象編程
5.如何傳輸Java對象
6.JAVA認證考試細則
7.java認證考試介紹
8.SUN JAVA認證介紹
这里有更多你想看的
|
- 上一篇:java五種排序算法匯總 java五種排序算法匯總表
- 下一篇:返回列表