Object的equals()方法比较引用类型的地址值是否相同(比较对象的内存地址)
源码:
public boolean equals(Object obj) { return (this == obj); }
String的equals()方法比较的是值
源码:
public boolean equals(Object anObject) { if (this == anObject) { return true; } 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) { if (v1[i] != v2[i]) return false; i++; } return true; } } return false; }