黑马程序员技术交流社区
标题:
相等吗?
[打印本页]
作者:
JustForYou
时间:
2015-7-31 23:59
标题:
相等吗?
在Java基础中,现在接触到的有两个判断相等,经常搞混,求解!
==和.equals 在判断的时候经常用错,有时候还说要重写equals方法,,全乱了.........
作者:
hellojavacode
时间:
2015-8-1 00:01
==是对数值得比较,而equals可以用于对字符串的比较。
作者:
fantianfei
时间:
2015-8-1 07:34
就如两个人名字一样,==相当于说他们是否是同一个人,equals相当于说他们名字是否相同。
作者:
李峥
时间:
2015-8-1 08:27
Object中equals方法内部代码就是"==",所以Object类中两者都是比较地址值,
String类中重写了equals方法,比较的是对象的内容,与"=="不一样;
一般equals方法都会重写,重写内容是什么,就比较什么。
作者:
JustForYou
时间:
2015-8-2 21:07
李峥 发表于 2015-8-1 08:27
Object中equals方法内部代码就是"==",所以Object类中两者都是比较地址值,
String类中重写了equals方法, ...
谢谢!!
作者:
知行合意
时间:
2015-8-2 21:13
==比较运算符
A、基本数据类型:比较的是基本类型的值是否相等。
B、引用数据类型:比较的是引用类型的地址值是否相等。
equals()
比较两个对象是否相等(默认指的是地址值,也就是说是否指向同一对象)
重写该方法,实现具体属性性的比较。
作者:
huangguan
时间:
2015-8-2 21:15
这个应该是数字与字符之间的问题,学到后面你就清晰了
作者:
青春是你的烟火
时间:
2015-8-2 21:48
上帝类Object类中定义了equals方法,可以看一下源码,另外一些类重写了该方法,所以就会根据需要改变。之前,比较地址是没有意义的。因为new出来的两个对象,地址不可能一样。所以进行了重写。判断属性是否一样。
作者:
guohuaxin
时间:
2015-8-2 21:55
==用于数值的比较,而equals用于引用变量的比较(比如对象,字符串)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2