A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王凯路路 中级黑马   /  2014-8-24 20:08  /  1189 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

请问==和equals的区别是什么 ?  编写一些什么代码有助于理解他们的区别 ?

5 个回复

倒序浏览
==:
可以比较基本类型,也可以比较引用类型。
比较基本类型,比较的是值是否相同。
比较引用类型,比较的是地址值是否相同。
equals:
只能比较引用类型。
默认情况下,比较的是地址值是否相同。
如果想比较内容,请自己重写Object类的equals()方法。
比如String重写了equals方法,比较的就是字符串的内容是否相同
回复 使用道具 举报 1 0
==比较的是地址 equals比较的是值
回复 使用道具 举报
(1)对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同。“==”比较两个变量本身的值,即两个对象在内存中的首地址。2)对于非字符串变量来说,"=="和"equals"方法的作用是相同的都是用来比较其对象在堆内存的首地址,即用来比较两个引用变量是否指向同一个对象。
回复 使用道具 举报
好久之前的问题了~~以前我有过很详细的回答~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马