1. 程式人生 > >String.equals(Object anObject)方法

String.equals(Object anObject)方法

obj logs ole nbsp 比較 bject 對象 != 為什麽

首先註意,equals()方法接受的是Object類型的對象,並不一定是String類型。

public boolean equals(Object anObject) {
        //兩個對象地址是否一樣,是,肯定是同一個對象
        if (this == anObject) {
            return true;
        }
        //目前這個對象是否是String的實例(這也是為什麽犯法傳入的是Object對象)
        if (anObject instanceof String) {
            //強轉為String類型
            String anotherString = (String)anObject;
            
int n = value.length; //兩個字符串長度是否一樣,不一樣肯定不相等 if (n == anotherString.value.length) { //字符串長度一樣,比較裏面得字符是否一對一的相同 char v1[] = value; char v2[] = anotherString.value; int i = 0; while (n-- != 0) {
if (v1[i] != v2[i]) return false; i++; } return true; } } return false; }

String.equals(Object anObject)方法