equals在String类中
public boolean equals(Object anObject) {
if (this == anObject) {//1用==判断是否全等
return true;
}
if (anObject instanceof String) { //2用 instanceof 判断是否是String对象 ,不是的话直接返回false
String anotherString = (String)anObject;
int n = value.length;
if (n == anotherString.value.length) { //3判断两个对比对象长度是否相等
char v1[] = value;
char v2[] = anotherString.value;
int i = 0;
while (n-- != 0) { //4循环判断每个字符是否相等
if (v1[i] != v2[i])
return false;
i++;
}
return true;
}
}
return false;
}
总结有如下四个判断 顺序为
1用==判断是否全等
2用 instanceof 判断是否是String对象 ,不是的话直接返回false
3判断两个对比对象长度是否相等
4循环判断每个字符是否相等