3 回答


TA貢獻(xiàn)55條經(jīng)驗(yàn) 獲得超13個(gè)贊
看了下源碼 傳入?yún)?shù)為anObject,里面一個(gè)判斷是 this == anObject 應(yīng)該是只有內(nèi)存地址相關(guān)才會(huì)為true
另個(gè)一個(gè)anObject instanceof String,直接指定了判斷類型是否為String
以上似乎只有傳入?yún)?shù)類型為String才會(huì)進(jìn)行判斷 其他情況都是直接return false
所以個(gè)人理解入?yún)懗蒓bject類型只是寫通用化模塊的編碼習(xí)慣的問題
public boolean equals(Object anObject) {
?? ?if (this == anObject) {????//如果內(nèi)存地址相同
?? ???? return true;
?? ?}
?? ?if (anObject instanceof String) {????????//如果是String類型實(shí)例
?? ???? 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;
?}
添加回答
舉報(bào)