public boolean equals(Object anObject) {// ==:比較的引用類型,比較的是地址值是否相同if (this == anObject) { //地址值相等,返回truereturn true;}// instanceOf判斷一個對象是不是某個類型的實例if (anObject instanceof 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) {// 比較每一個元素,只要有一個元素不想等 返回 falseif (v1[i] != v2[i])return false;i++;}return true;}}return false;
}

總結:String equals()方法思路:先比較地址值是否相等,在比較字符串的長度是否相等,最后對每個字符做一一對應比較。