首页 > 其他 > 详细

equals和==的区别

时间:2020-05-05 22:52:10      阅读:87      评论:0      收藏:0      [点我收藏+]

equals和==的区别

首先对于基本数据类型和引用数据类型==的作用效果是不同的:

基本数据类型比较的是值是否相同,引用数据类型比较的是值是否相同。

技术分享图片

 

因为x和y指向的是同一个引用,所以==也是true,而new String方法重写开辟了内存空间,所以==结果为false,而equals比较的一直是值,所以结果都是ture。

 

 

 

 

 

 

首先来看一下默认情况下equals比较一个有相同值的对象输出结果为false,

技术分享图片

 

 但是在String方法下就输出为ftrue原因在源码中可见:

技术分享图片

 

 原因就是String重写了Object的equals方法,把引用比较改成了值比较。

 

 

 

 

equals和==的区别

原文:https://www.cnblogs.com/fgy11/p/12832992.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!