主要区别
1、equals()是方法,==是比较运算符;
2、比较基本数据类型时,只能用==,比较的是值是否相等;
3、比较引用数据类型时,==比较的是引用地址是否相等,equals()则根据对象是否重写Object中的equals(),判断是equals比较引用地址还是equals比较内容。
equals比较引用地址
对象没有对Object类中equals()方法进行重写,则比较的是引用地址,因为所有引用数据类型均继承自Object类,而Object的equals方法返回的是==比较结果即引用地址比较结果。
Object类equals()方法源码
equals比较内容
对象对Object类中的equals()方法进行了重写,则返回的是比较对象的内容是否相等。
String类equals()方法源码