java中==这个关系运算符对比分两种情况
如果是两个基本数据类型则对比他们的值
如果对比的是两个引用类型则对比他们的内存地址,即两个对象引用是否同一个
equals在object中的实现如下
public boolean equals(Object obj) {
urn (this == obj);
}
即跟==是相同的,只是不能用于基本数据类型的对比
但是诸如String、Date等类对equals方法进行重写,他们的equals比较的是引用类型的值。在object的equal方法介绍中有一句话:当此方法被重写时,通常有必要重写 hashCode 方法,以维护 hashCode 方法的常规协定,该协定声明相等对象必须具有相等的哈希码。