关于用 equals()

关于用 equals()

相关截图:

http://img1.sycdn.imooc.com//climg/60b5cfa2099b852600000000.jpg


问题描述:

if(obj.getClass()==Cat.class){
Cat cat=new(Cat)obj;
return cat.getName().equals(name)&&(cat.getMonth()==month)
&&(cat.getSpecies().equals(species));
}


​不能写成这样吗:

if(obj.getClass()==Cat.class){
Cat cat=new(Cat)obj;
return this == cat;
}



正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,是不可以的,==判断是对象地址,两个new出来的对象地址是不一样的,所以这里不能使用==来判断;同学可以自己写代码试一下哦

祝学习愉快~

  • 慕神74214486 提问者 #1

    所以说在方法里面,this 和 Object类对象 都是以地址的方式表现的吗?

    2021-06-01 15:27:35
  • 好帮手慕阿园 回复 提问者 慕神74214486 #2

    同学你好,可以这么理解,如果使用==比较对象,比较的就是地址值

    祝学习愉快~

    2021-06-01 17:21:29
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师