==和equals的区别
这个也不仅仅是基础知识了,就算是在面试中也有可能被问到。那我们今天就来简单快速的把这个知识点记住吧!
-
==比较基本类型,比较的是值。
-
equals比较的是引用类型,比较的是内存地址。
equals是Object类的方法。有的类对equals()进行了重写,比如String的equals被重写后比较的是内存地址。
被重写后的equals()类都必须要重写hashCode()。
下面是关于String类中重写的equals()的源码。
先是使用==对目标字符串进行比较。
如果是Sting类型的,就拆分成字符数组进行遍历对比。
![在这里插入图片描述](https://img-blog.csdnimg.cn/345ebf06ec4745d8abfcb06267958d58.png#pic_center)