==:
基本类型比较值:只要两个变量的值相等,即为true。如:int a=5;if(a==6){}
引用类型比较引用(是否指向同一个对象):只用指向同一个对象时,==才返回true。
Person p1 = new Person();
Person p2 = new Person();
if(p1==p2) {}
用“==”进行比较时,符号两边的数据类型必须兼容(自动转换类型除外),否则编译出错;
equals():所有类都继承了Object,也就获得了equals()方法。还可以重写。
只能比较引用类型,其作用与“==”相同,比较是否指向同一个对象。
格式obj1.equals(obj2)
特例:当用equals()方法进行比较时,对类File,String、Data及包装类(Wrapper Class)来说,是比较类型及内容而不考虑引用的是否是同一个对象;
原因:在这些类中重写了Object类的equals()方法。