==

操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存

储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用

==

操作

符。


如果一个变量指向的数据是对象类型的,

那么,

这时候涉及了两块内存,

对象本身占用一块

内存(堆内存)

,变量也占用一块内存,例如

Objet obj = newObject();

变量

obj

是一个内存,

new Object()

是另一个内存,此时,变量

obj

所对应的内存中存储的数值就是对象占用的那

块内存的首地址。

对于指向对象类型的变量,

如果要比较两个变量是否指向同一个对象,

要看这两个变量所对应的内存中的数值是否相等,这时候就需要用

==

操作符进行比较。


equals

方法是用于比较两个独立对象的内容是否相同,就好比去比较两个人的长相是否相

同,它比较的两个对象是独立的。