黑马程序员技术交流社区

标题: equals [打印本页]

作者: LLQALLQ    时间: 2016-3-28 23:46
标题: equals
很多对象里面复写了equals,
他比较的到底是地址值还是对象啊
作者: zhoubinjian    时间: 2016-3-29 00:36
对象。。。。
作者: 长衫造纸农_    时间: 2016-3-29 08:41
   对象,一般用来比较字符串
作者: 小海龙    时间: 2016-3-29 08:46
让我们更容易理解的方式是:比较的是对象中的内容。
作者: Poul    时间: 2016-3-29 21:15
==和equals()用法区别:
1.==,若两边为基本数据类型变量,则比较的是其存储的值是否相等;若为引用类型变量,则比较的是所指向的对象的地址
2.equals(),不能作用于基本数据类型的变量。若没有对equals()重写,则比较的是引用类型的变量所指向的对象的地址;若重写了,一般比较的是指向的对象的内容
作者: 青争心    时间: 2016-3-29 21:30
不重写 就是地址值
作者: lidandan    时间: 2016-3-29 21:38
二楼正解。。。。。。
作者: zhangtaocg    时间: 2016-3-29 21:46
对象和值都可以吧。。。
作者: 陌丶    时间: 2016-3-29 21:47
好像是equals重写了String里的方法,所以比较的是对象的属性不是地址值
作者: he27742787    时间: 2016-3-29 22:03
如果不复写,就默认比较地址值;复写了的话都是不同的对象复写不同的比较方式
作者: zx7750462    时间: 2016-3-29 22:07
不重写就是地址值,没什么意义,所以一般都重写来比较对象的属性
作者: 马儿不吃草    时间: 2016-3-29 22:14
重写之前比较的是地址值,但是没有意义.重写后就比较的是对象的属性值
作者: 妄想年少轻狂    时间: 2016-3-29 22:36
一般都是比较属性值,具体比较哪些属性值还是要看怎么重写的
作者: 赵浩霖    时间: 2016-3-29 22:38
比较的是String里放的内容
作者: 赵浩霖    时间: 2016-3-29 22:39
我是这么记的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2