老师您好 为什么这样也可以比较

正在回答 回答被采纳积分+1

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

1回答
liuyubobobo 2021-03-28 20:34:19

抱歉,我没有理解你的问题。具体是哪句话?你认为因为什么原因?不能做什么事情?现在这段逻辑做了什么事情,你觉得是不应该的?

  • 提问者 weixin_慕标3497327 #1

    就是没有进行强制转换 

    return this.name.equals(students);


    2021-03-28 20:35:49
  • liuyubobobo 回复 提问者 weixin_慕标3497327 #2

    看懂了。此时两个类型都将按照 Object 的 equals 的逻辑去处理,比较的是两个引用的地址,所以你可以运行一下课程中写的测试用例,是无法正确找到你想要找的学生 Bob 的。这样写编译没问题,是因为 equals 函数本身需要一个 Object,而不是某个特定的限定类别。而我们前面写的一系列逻辑做的事情,就是确保传来的这个 Object 和我们要比较的对象,有真实的比较意义。

    2021-03-28 20:42:06
  • 提问者 weixin_慕标3497327 回复 liuyubobobo #3

    http://img1.sycdn.imooc.com//climg/60607c3409c9f4fb19201030.jpg

    我试了一下是可以找到的呀

    2021-03-28 20:53:43
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
算法与数据结构
  • 参与学习       2589    人
  • 解答问题       1090    个

慕课网算法名师Liuyubobobo,5年集大成之作 从0到工作5年,算法与数据结构系统解决方案

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

在线咨询

领取优惠

免费试听

领取大纲

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