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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

求大神告知

9 个回复

倒序浏览
简单点说 前者比较基本数据类型  后者比较引用数据类型  感觉不怎么好说  照着多敲几次就慢慢明白了
回复 使用道具 举报
==
当两个基本数据类型用==比较时,判断的是大小
引用数据类型用==比较时,判断的就是地址值了

equals
只能判断引用数据类型
如果equals没有被重写,equals就是object的方法,那么两个引用数据类判断的就是地址值
一般我们使用equals时  都会对其进行重写,用来比较两个引用类型的内容是否相等

点评

原来是这个样子  发表于 2015-11-30 11:27
回复 使用道具 举报 1 0
小笨笨天 发表于 2015-11-18 21:42
简单点说 前者比较基本数据类型  后者比较引用数据类型  感觉不怎么好说  照着多敲几次就慢慢明白了 ...

貌似懂了......
回复 使用道具 举报
fsociety 发表于 2015-11-18 21:58
==
当两个基本数据类型用==比较时,判断的是大小
引用数据类型用==比较时,判断的就是地址值了

谢谢
回复 使用道具 举报
简单说 ==比较地址 equals 比较内容.
回复 使用道具 举报
等等于比较的是地址值,equals比较的是内容
回复 使用道具 举报
本帖最后由 黑夜中那颗星 于 2015-11-22 21:49 编辑

==比较的是地址值,equals是Object里面的方法,String类继承,然后复写了这个方法把功能改成了比较字符串内容,原始Object里面的equals方法也是比较地址值的,
在Object里面的equals方法是这样的:
public boolean equals(Object obj){
  return this==obj;
}
回复 使用道具 举报
赞赞赞赞
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马