(1). 关于使用==,在Java中使用它来进行比较的无非就两种,一种是primitive主数据类型(非引用类型),一种就是引用类型。
1.用于primitive主数据类型相比是两者之间的值,相同返回true。
2.用于引用类型相比的是两者之间的地址(这里还需请教大家hashCode()返回的是对象的地址吗?),相同才返回true。
(2).关于使用equals(),注意这是个方法来的,只适用于任何对象(任何对象的父类都是Object),就是引用类型之间的比较。
1.用于自己创建的类,equlas()方法都是调用了Object父类的equals方法,关于此方法请看,
大概是说对比hashCode()值的,两个对象指向同一地址,相同就返回true。
2.用于String类,因为String类重写了自己的Object方法,关于此方法请看,
大概是说对比string值的,相同就返回true (不考虑是否指向同一个对象)。
自己写了个小Demo,希望能够帮助大家理解,共同进步。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦