== :
既可以比较基本数据类型也可以比较引用数据类型。比较基本数据类型时,就是比较值是否相等。比较引用数据类型时,就是比较类型地址是否相等。
equals():
1.equals()只能比较引用数据类型。
2.equals()是Object类里定义的方法,在Object类里它的代码是:
public boolean equals(Object obj) {
return (this == obj);
}
即如果当类中equals()方法没有被重写时,equals()与==等效,即比较两个引用数据类型的地址是否相同。
3.在常见的String、Date、File的引用数据类型中都重写了equals()方法,重写以后,就是比较“内容”是否相同,不在关注地址值。
具体情况要看自定义类中是否重写了equals()方法
在idea中,需要重写equals()方法时,直接ALT+insert,自动生成。手动写难免会有漏洞。



