黑马程序员技术交流社区

标题: == 与 equals 的区别 [打印本页]

作者: 星辉祝愿    时间: 2015-5-24 17:19
标题: == 与 equals 的区别
== 引用类型比较 比如你new 两个String对象,里面的值都一样,但是这两个对象就不相等,因为他们在内存中,所引用的对象是两个值。

equals 值类型比较,不管引用的是多个对象,只要值是一样的,那这两个对象就相等,而且能判断大小。
作者: luxinyu    时间: 2015-5-25 00:34
==比较的是2个对象的地址,而equals比较的是2个对象的内容。equals为true时,==不一定为true。
作者: 重复    时间: 2015-5-25 00:44
其实equals和==都是引用类型比较,但是String类里边是重写了equals方法,所以String中的equals是比较内容的
作者: 张凝宁    时间: 2015-5-25 00:54
还没有学到,不过来看看 提前学一下。
作者: JavaStudy770    时间: 2015-5-25 01:07
==是用于基本数据类型的比较和引用变量(其实就是对象的地址值,该值也是int型)的比较;而equals是从Object继承而来,专门用于比较对象的内容是否相等的,如果子类不重写它,它默认比较的就是两对象的地址值
作者: LoveMyself    时间: 2015-5-25 01:08
== 是比较两个对象的内存地址,equals 是判断两个对象的内容
作者: 黯然残影    时间: 2015-5-25 01:18
==一般比较的是基本类型,比较引用类型时,比较的是地址;equals是Object中的方法,比较的是对象的地址,被子类重写后一般比较的是对象的值
作者: 凉仁日记    时间: 2015-5-25 09:56
其实equals和==都是引用类型比较,但是String类里边是重写了equals方法,所以String中的equals是比较内容的




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