为了账号安全,请及时绑定邮箱和手机立即绑定

关于==与equals的问题

标签:
Android

(1). 关于使用==,在Java中使用它来进行比较的无非就两种,一种是primitive主数据类型(非引用类型),一种就是引用类型。

1.用于primitive主数据类型相比是两者之间的值,相同返回true。

2.用于引用类型相比的是两者之间的地址(这里还需请教大家hashCode()返回的是对象的地址吗?),相同才返回true。

(2).关于使用equals(),注意这是个方法来的,只适用于任何对象(任何对象的父类都是Object),就是引用类型之间的比较。

1.用于自己创建的类,equlas()方法都是调用了Object父类的equals方法,关于此方法请看,5bdf0a5e00011ec308270260.jpg

大概是说对比hashCode()值的,两个对象指向同一地址,相同就返回true。

2.用于String类,因为String类重写了自己的Object方法,关于此方法请看,5bdf0a5f0001e0f006640171.jpg

大概是说对比string值的,相同就返回true (不考虑是否指向同一个对象)。

自己写了个小Demo,希望能够帮助大家理解,共同进步。

5bdf0a5f000183e510930510.jpg

原文链接:http://www.apkbus.com/blog-687520-59489.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消