1,equals()方法是Object类中就存在的
2,java.lang中的String类重写了equals()方法
3,代码如下:
public boolean equals(Object anObject) {
// 判断两个对象的引用地址是否相同
if (this == anObject) {
return true;
}
// 判断入参对象类型是否是String类型
if (anObject instanceof String) {
// Object类型转换成String类型
String anotherString = (String)anObject;
// 获取比较对象的长度
int n = value.length;
// 判断两个String对象的长度是否相同
if (n == anotherString.value.length) {
// 挨个儿比较两个String对象的字符是否相同
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;
}
本文深入探讨了Java中String类的equals()方法实现细节,包括如何比较字符串内容的等价性,通过检查引用地址和类型,逐字符对比确保字符串完全相同。

被折叠的 条评论
为什么被折叠?



