关于==和equals的区别和联系,面试这么回答就可以
https://blog.csdn.net/qq_27471405/article/details/81010094
长篇大论的话,我这里就不多写了,相信大家入门java 的时候就知道个大概了,这里想表述的是,如果面试官问你《关于==和equals的区别》,该怎么回答完美呢?可以这样说
总结的来说:
1)对于==,比较的是值是否相等
如果作用于基本数据类型的变量,则直接比较其存储的 “值”是否相等;
如果作用于引用类型的变量,则比较的是所指向的对象的地址
2)对于equals方法,注意:equals方法不能作用于基本数据类型的变量,equals继承Object类,比较的是是否是同一个对象
如果没有对equals方法进行重写,则比较的是引用类型的变量所指向的对象的地址;
诸如String、Date等类对equals方法进行了重写的话,比较的是所指向的对象的内容。
eg:说一下我的个人理解哈,我看了视频和网上的视频,第一 :==一般用在基本数据类型中用来比较值的大小,而equals在object包中所以几乎不会用在基本数据类型中,假如**==用在了引用数据类型中,则是在比较地址**,而相比于equals则是比较对比的数地址所对的值**,也就是说虽然equals也在比较地址但是它的最终结果还是值的大小。**
最后的最后,==不可以被重写,而equals往往重写(程序员往往不会满足object给你的equals(比较引用数据类型的值大小)功能)。
同时这个东西比较困难的地方是在String字符串上的对比,相信在面试题和试卷上经常性的出现这样 的题目,虽然没有实际的作用,但是依旧纠缠我们。
如果大家存在疑惑可以通过回想String常量池和String的new。同时下面也是一个特例,和常量池一样的原理。
- 码农面试失败,关于前后端分离他是这么回答的!网友:挂的不冤!
- 关于面试jquery中的 .attr() 和 .prop()的区别联系
- 关于hashCode()和equals()的本质区别和联系
- 关于==和equals的区别和联系
- 关于Linux中profile、bashrc、bash_profile之间的区别和联系
- hashCode与equals的区别与联系
- 一个HR人给应届生的面试建议,关于应届生面试自我介绍、常见问题及回答、面试礼仪、技巧等,非常全面、非常专业,面试前必看,晚了后悔呀。
- hashCode与equals的区别与联系
- 黑马程序员——关于java中equals和==的区别
- 关于 equals 和 == 的具体区别 从源码角度分析
- 详细解析==,equals,与hashcode的区别与联系
- 关于display的block、inline、inline-block的联系和区别
- hashCode与equals的区别与联系
- C# ==、Equals、ReferenceEquals 区别与联系
- hashCode与equals的区别与联系 还有“==”
- hashCode与equals和==的区别与联系
- 关于Equals 和== 的区别
- 面试常考点:http和https的区别与联系
- 结构体(struct)和联合体/共同体(union)的联系和区别——名企面试重难点
- Java中==和equals的区别联系