java菜鸟 equals问题!

equals方法不是比较输入对象obj的name age与p的值吗 那是怎么运行来比较p1与p2的值呢?图片说明图片说明

6个回答

自己实现的equals方法中不是写了吗?将两个属性都比较了,new 完一个对象 ,this代表当前对象 , 传进去的参数又是另外一个对象

最后代码缺少return代码。

name 是String类型,不能用双=比较的,要用equals方法比较。
非基本数据类型最好都用equals方法比较。

==比较的是地址,用于基本数据类型。equals比较的是内容,用于引用数据类型。

同学,我看你用的IDE是eclipse,eclipse提供了非常方便的自动生成equals和hashCode方法代码的命令:
图片说明

你的equals方法如果第一个if不成立就没法往下继续执行了,不会有返回值,程序是编译不过去的。在第一个if加个else里面填一个retrun就好了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问