黑马程序员技术交流社区

标题: 求解==和equals什么区别呢 [打印本页]

作者: chenyannna    时间: 2015-9-15 20:49
标题: 求解==和equals什么区别呢
自己的理解很肤浅,大神解释下啊
作者: hhuxiaolang    时间: 2015-9-15 21:06
前者比较地址,后者比较内容
作者: sxwnzbn    时间: 2015-9-15 21:11
楼上正解
作者: boboyuwu    时间: 2015-9-15 22:54
hhuxiaolang 发表于 2015-9-15 21:06
前者比较地址,后者比较内容

别那么绝对要知道在Object中 equals也是比较地址值得,应该这么解释  :   equals和==在Object中用法是一样的都是比较地址值,继承Object的类使用equals也是比较对象的地址值,  有些类例如:String重写了equals()方法进行了里面内容的比较,所以重写后的equals()是比较2个对象里面的值
作者: gannenggufen    时间: 2015-9-15 23:02
boboyuwu 发表于 2015-9-15 22:54
别那么绝对要知道在Object中 equals也是比较地址值得,应该这么解释  :   equals和==在Object中用法是一 ...

对的,有个例。
作者: xiaote0225    时间: 2015-9-16 00:29
不一定,要看两者的具体运用程序并结合API查看才能确定
作者: ashun    时间: 2015-9-16 09:43
正常情况下是 前者比较地址,后者比较内容,但如果你重写了equals方法,那就得具体分析了
作者: chenyannna    时间: 2015-9-16 20:51
boboyuwu 发表于 2015-9-15 22:54
别那么绝对要知道在Object中 equals也是比较地址值得,应该这么解释  :   equals和==在Object中用法是一 ...

除了Object就是 ==比较地址,equals比较内容了吗
作者: boboyuwu    时间: 2015-9-17 08:20
chenyannna 发表于 2015-9-16 20:51
除了Object就是 ==比较地址,equals比较内容了吗

重写的equals不就针对性的比较了么   例如String字符串里重写的equals
作者: meihua    时间: 2015-9-17 08:35
我自己的感觉,对象,类一般用的是equals(),常量一般用的==




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