==操作符和equals方法
==:
1、基本类型比较: 只要两个变量的值相等,就为true
2、引用类型比较: 只有指向同一个对象时,才返回true
equals(): 所有的类都继承了Object类,所以就获得了equals方法,还可以重写。
1、只能用来比较引用类型,作用与“==”相等
2、特例:
当用File、String、Date等类的equals方法时,是比较的内容,而没有比较是否是同一个对象。因为这些类中对equals方法进行了重写。
重写equals的原则:
1、对称性:x.equals(y) 的值要等于y.equals(x)
2、自反性:x.equals(x) 必须返回true
3、传递性:x.equals(y)返回的是true,y.equals(z)返回的是true,则x.equals(z) 也应该返回true
4、一致性:内容不变,无论重复多少次,结果都不会改变。